我正在使用apache POI创建一个包含多个电子表格的Excel文件。首先,此方法应在检查工作簿是否存在后检查工作簿是否为空。如果为空,请创建新的工作表名称“sheet1”;如果不是,请检查此工作簿中任何名为“sheet1”的工作表。如果是,则向工作表添加新行;如果不是,请创建一个工作表名称“sheet1”。以下是我当前的代码,我认为这不是实现我目标的正确方法:
File file = new File("Main Data.xlsx");
// Retrieve the workbook for the main report
XSSFWorkbook workbook;
// Check file existence
if (file.exists() == false) {
// Create new file if it does not exist
workbook = new XSSFWorkbook();
} else {
try (
// Make current input to exist file
InputStream is = new FileInputStream(file)) {
workbook = new XSSFWorkbook(is);
}
}
XSSFSheet spreadsheet;
// Check if the workbook is empty or not
if (workbook.getNumberOfSheets() != 0) {
for (int i = 0; i < workbook.getNumberOfSheets(); i++) {
if (workbook.getSheetName(i).equals(" Enc " + deviceLabel.getText() + " Info. ")) {
spreadsheet = workbook.getSheet(" Enc " + deviceLabel.getText() + " Info. ");
} else spreadsheet = workbook.createSheet(" Enc " + deviceLabel.getText() + " Info. ");
}
}
else {
// Create new sheet to the workbook if empty
spreadsheet = workbook.createSheet(" Enc " + deviceLabel.getText() + " Info. ");
}
// Error here (variable spreadsheet may not have been initialized
spreadsheet.shiftRows(0, spreadsheet.getLastRowNum(), 23);
我遇到的拖曳问题。
例如
if ((workbook.getNumberOfSheets() == 0) && !workbook.getSheet("sheet1").exists()) {
workbook.createSheet("sheet1");
} else workbook.getSheet("sheet1")
您已将工作簿声明为最终版本,它不能是工作的初始版本!
我发现了以下代码的问题:
File file = new File("Main Data.xlsx");
// Retrieve the workbook for the main report
XSSFWorkbook workbook;
// Check file existence
if (file.exists() == false) {
// Create new file if it does not exist
workbook = new XSSFWorkbook();
} else {
try (
// Make current input to exist file
InputStream is = new FileInputStream(file)) {
workbook = new XSSFWorkbook(is);
}
}
XSSFSheet spreadsheet = workbook.getSheet("sheet1");
// Check if the workbook is empty or not
if (workbook.getNumberOfSheets() != 0) {
for (int i = 0; i < workbook.getNumberOfSheets(); i++) {
if (workbook.getSheetName(i).equals("sheet1")) {
spreadsheet = workbook.getSheet("sheet1");
} else spreadsheet = workbook.createSheet("sheet1");
}
}
else {
// Create new sheet to the workbook if empty
spreadsheet = workbook.createSheet("sheet1");
}
// Shift rows down if exist
spreadsheet.shiftRows(0, spreadsheet.getLastRowNum(), 23);
我得到了这个错误: 工作簿已包含此名称的工作表 行应该检查工作簿是否已经包含此名称的工作表,但它不工作。我仍然有错误。 谢谢你的帮助!
我试图通过电子表格发送电子邮件。脚本从电子表格中的工作表中获取电子邮件和电子邮件正文。当此工作表是第一个工作表时,脚本工作正常。然而,出于我不想深入讨论的原因,我需要另一张表格作为第一张。我试过使用: var ss=电子表格应用程序。活跃起来。表(); var表=ss.getSheetByName('电子邮件'); 然而,当我这样做时,我得到了信息 TypeError:在对象工作表中找不到函数ge
我很难找到关于如何设置onEdit触发器的好资源。我有一个只想在编辑特定工作表时运行的函数。例如,假设我有表1、表2、表3、表4、表5。我的脚本从工作表2、3、4中提取数据并填充工作表1。我只希望在有人编辑工作表2、3或4时运行脚本。如何设置此触发器?
我不熟悉谷歌电子表格功能,并尝试以以下方式应用公式: 我有一张床单 我想链接工作表2中的范围数据 现在需要考虑的是,它只显示了一个项目(最后一个),而这个范围本来应该显示十个项目(a1:a10) 有关更正上述公式的详细信息和帮助,请查看以下链接: https://docs.google.com/spreadsheets/d/1HX1eatP57A5k9Xku7awIVnBPQ2A4ICVrYXTs
我在为一些不寻常的事情挣扎。。。 我正在做一个谷歌电子表格,有很多表格,它们的名字是MM/YYYY,我需要获取A1:B100范围内的所有数据,然后用这些数据在主数据表上进行查询,问题是,我用javascript做了一个函数来获取这些表格的范围,但我不能在=QUERY()上使用它们功能,尝试了很多,用不同的方法从互联网上,但没有成功。。 我的电子表格示例: https://docs.google.c