Excel Interop – 保存前设置文件名

文件保存前可以设置excel文件名吗?

我有以下简单的代码:

using Excel = Microsoft.Office.Interop.Excel; Excel.Application excel = new Excel.Application(); excel.Visible = true; Excel.Workbook workbook = excel.Workbooks.Add(Excel.XlSheetType.xlWorksheet); Excel.Worksheet sheet = workbook.Sheets[1]; sheet.Cells[1, 1] = "Hello World!"; 

可以在保存前预定义这个名字吗?

在这里输入图像说明

谢谢。

不幸的是,在储蓄之前没有明确的,简单的方法来做到这一点。 你可以最接近的是使用模板。 如果你有一个名为FOO.xltx的模板,你可以像这样创build你的工作簿:

 Application.Workbooks.Add "X:\path\to\FOO.xltx" 

唯一的怪癖是新文件的名称将会附加一个递增的数字(第一次是FOO2 ,然后是FOO2FOO3等)。

要创build模板,只需创build一个新文档,并保存时,从Save as type下拉列表中selectExcel Template (*.xltx)

你必须使用saveas来保存你想要的文件名。 然后,当用户点击保存它将只更新以前创build的文件。 不幸的是,没有别的办法。 这里是代码:

 workbook.SaveAs(Filename: FILENAMEHERE); 

以下是MSDN文档: https : //msdn.microsoft.com/en-us/library/microsoft.office.tools.excel.workbook.saveas.aspx