如何使用java从.xlsm文件中获取特定单元格的值。 我想通过指定特定的行和列来获取单元格值,例如我需要第1行和第C1列或第5行和第C6列的单元格值...我通过指定行和列号来获取值,如下所示< / p>
XSSFRow row = sheet.getRow(4);
// 4是行号
cell = row.getCell(4);
// 4是列号
但这只有当工作表有从A,B,C,D开始的列时......这样......当我尝试使用相同的编码来获取另一张工作表但它不起作用时......这张表,列从C,D,E开始......等等
任何人都可以帮助我了解我可以使用什么来获得指定的结果吗?
答案 0 :(得分:11)
您可能希望使用CellReference实用程序类来帮助您。
然后您可以执行以下操作:
Sheet sheet = workbook.getSheet("MyInterestingSheet");
CellReference ref = new CellReference("B12");
Row r = sheet.getRow(ref.getRow());
if (r != null) {
Cell c = r.getCell(ref.getCol());
}
这将允许您在给定的Excel样式引用中找到单元格
答案 1 :(得分:0)
如果该表有名称,您可以获取表名并使用迭代器。
Iterator iterator = workSheet.rowIterator();
while(iterator.next){
Row row = (Row) iterator.next();
//u can iterate and use row.getCell(i)
}