为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

一只甜甜圈 2023-10-13 15:25:06
我正在尝试从现有 Excel 文件 (xlsx) 创建 Excel 模板文件 (xltx)。我已经以相反的方式实现了它,因此从模板文件创建了一个 Excel 文件。但我需要以另一种方式。首先,我清除工作表,以获得干净的模板文件,但是当我将其另存为 xltx 时,它正确显示在我的文件夹中,但我无法打开它。只有当我手动将文件重命名为 (...).xlsx 时,我才能打开该文件。有人知道如何从 xlsx 创建 xltx 文件吗?甚至可以在代码中实现吗?PS:在Java中谢谢
查看完整描述

2 回答

?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

如果*.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);

  }


 }

}


查看完整回答
反对 回复 2023-10-13
?
茅侃侃

TA贡献1842条经验 获得超21个赞

 ActiveWorkbook.saveas filename:=replace(activeworkbook.name,".xlsx",".xlst"),fileformat:=54

对于没有宏或

ActiveWorkbook.SaveAs Filename:=Replace(ActiveWorkbook.Name, ".xlsm", ".xltm"), FileFormat:=53

如果你有宏


查看完整回答
反对 回复 2023-10-13
  • 2 回答
  • 0 关注
  • 153 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信