Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
命令行开关,将Excel模板作为工作簿打开_Excel_Command Line Arguments - Fatal编程技术网

命令行开关,将Excel模板作为工作簿打开

命令行开关,将Excel模板作为工作簿打开,excel,command-line-arguments,Excel,Command Line Arguments,我们有Excel 2010模板(.xlxt文件)的快捷方式(.lnk文件),指定了以下目标: "C:\Program Files\Microsoft Office\Office14\EXCEL.EXE" "\\MyPath\MySpreadsheet.xltx" 但是,打开此快捷方式将打开文件的模板版本。我们需要它来打开工作簿版本(就像有人右键单击文件本身并选择“新建”) 是否有人可以向上面的目标添加命令行开关,以强制将文件作为工作簿打开 非常感谢您的帮助 Martin删除对EXCEL.EXE

我们有Excel 2010模板(.xlxt文件)的快捷方式(.lnk文件),指定了以下目标:

"C:\Program Files\Microsoft Office\Office14\EXCEL.EXE" "\\MyPath\MySpreadsheet.xltx"
但是,打开此快捷方式将打开文件的模板版本。我们需要它来打开工作簿版本(就像有人右键单击文件本身并选择“新建”)

是否有人可以向上面的目标添加命令行开关,以强制将文件作为工作簿打开

非常感谢您的帮助


Martin

删除对EXCEL.EXE的调用已解决此问题

因此,我们的目标如下:

“\MyPath\MySpreadsheet.xltx”

我已替换了“excel.exe”调用,它的工作方式很有魅力。模板将生成一个新工作簿,该工作簿派生自

//   System.Diagnostics.Process.Start("Excel.exe", @"C:\Book1.xltm");
System.Diagnostics.Process.Start(@"C:\Book1.xltm");
我已将VBA宏的自动启动置于打开事件时的工作簿模块中

Private Sub Workbook_Open()

    Module1.Macro1

End Sub
并且在开始时对从模板生成的任何工作簿执行该操作

代码行数很少,但效率很高


另一种方法是使用正式命令行参数:/t工作簿路径|文件名

启动Excel并将指定文件作为模板打开

范例

excel.exe /t "c:\My Folder\book_name.xlsx".
见参考资料:

System.Diagnostics.Process.Start(“Excel.exe”,@”/t C:\Book1.xltm);