从 Excel 文件 (xlsx) 创建模板文件 (xltx)

我正在尝试从现有 Excel 文件 (xlsx) 创建 Excel 模板文件 (xltx)。

我已经以相反的方式实现了它,因此从模板文件创建了一个 Excel 文件。但我需要以另一种方式。

首先,我清除工作表,以获得干净的模板文件,但是当我将其另存为 xltx 时,它正确显示在我的文件夹中,但我无法打开它。只有当我手动将文件重命名为 (...).xlsx 时,我才能打开该文件。

有人知道如何从 xlsx 创建 xltx 文件吗?甚至可以在代码中实现吗?

PS:在Java中

谢谢


一只甜甜圈
浏览 154回答 2
2回答

素胚勾勒不出你

如果*.xlsx文件应另存为,则存储在其中的*.xltx部件名称的内容类型也必须更改为. 没有合适的。但这也可以使用低级别的类来完成。/xl/workbook.xml[Content_Types].xmlapplication/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xmlXSSFWorkbookTypeXLTX例子:import java.io.FileOutputStream;import org.apache.poi.ss.usermodel.*;import org.apache.poi.xssf.usermodel.XSSFWorkbook;class ExcelWriteXLTX { public static void main(String[] args) throws Exception {  try (Workbook workbook = new XSSFWorkbook();        FileOutputStream fileout = new FileOutputStream("ExcelTemplate.xltx") ) {   Sheet sheet = workbook.createSheet();   Cell cell = sheet.createRow(0).createCell(0);   cell.setCellValue("Content in template");   // ...   ((XSSFWorkbook)workbook).getPackagePart().setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml");   workbook.write(fileout);  } }}

茅侃侃

 ActiveWorkbook.saveas filename:=replace(activeworkbook.name,".xlsx",".xlst"),fileformat:=54对于没有宏或ActiveWorkbook.SaveAs Filename:=Replace(ActiveWorkbook.Name, ".xlsm", ".xltm"), FileFormat:=53如果你有宏
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java