打开Excel模板(xltx)作为Excel模板而不是工作簿

时间:2017-11-01 16:07:51

标签: c# excel interop

我正在尝试编写一行代码来打开excel模板(xltx)文件作为Excel模板文件而不是新工作簿。

我只是想让用户查看和编辑他们在我们网络上的库文件夹中的模板。

然而,我尝试的所有内容都会打开一个新工作簿,而不是模板。

我试过互操作:

Workbooks.Open(selectedxltxFile, Missing.Value, Missing.Value, Excel.XlFileFormat.xlOpenXMLTemplate, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);

以及Process.Start方法:

System.Diagnostics.Process.Start(@"C:\MYTemnplate.xltx")

这甚至可能还是我在错误的树上吠叫?

1 个答案:

答案 0 :(得分:0)

Workbooks.Open(Filename: @"C:\MYTemnplate.xltx", Editable: true);

我无处可寻。当所有其他方法都失败时(这不是很漂亮)记录一个包含您要完成的操作的宏,然后查看生成的VBA。

来自the docs

  

<强>可编辑

     

类型:System.Object

     

可选对象。如果该文件是Microsoft Excel 4.0加载项,则此参数为True以打开加载项,以使其成为可见窗口。如果此参数为False或省略,则加载项将作为隐藏打开,并且无法取消隐藏。此选项不适用于在Microsoft Excel 5.0或更高版本中创建的加载项。 如果文件是Excel模板,请使用True打开指定的模板进行编辑,或使用False打开基于指定模板的新工作簿。默认值为False。

换句话说,这个参数可能意味着不同的东西,具体取决于上下文,并且它们都不是直观的。如果指定Editable: false,则会根据模板打开新工作簿。它可以编辑吗?是。