如何在通过自动化启动Excel时打开personal.xls工作簿
本文关键字:personal 工作簿 xls Excel 启动 自动化 | 更新日期: 2023-09-27 18:26:51
我了解到,当Excel通过自动化打开时,默认情况下不会打开其启动项,例如personal.xls工作簿。这给我的用户带来了一个问题,他们有时会通过我的应用程序打开Excel,然后继续使用它进行其他工作。
不幸的是,以这种方式打开的Excel实例不包含他们的个人宏。他们必须关闭Excel并从我的应用程序外部重新打开它,这样他们的宏才可用。
有没有一种方法可以让Excel在通过自动化启动personal.xls工作簿时自动加载它?如果不是,那么打开该文件的最佳方式是什么?请记住,用户不应该看到该文件,而应该将其隐藏?
在创建对象和打开应用程序时,我没有找到任何选项
Excel.Application xlApp = new Excel.Application();
任何人都可以提供任何建议或链接,我们将不胜感激。我已经搜索了很多关于这方面的信息,但似乎没有人试图绕过它。我使用的是Excel2007和.NET2.0。
事实证明,简单地找到并打开用户的personal.xls(或在较新版本的Excel中创建的personal.xsx)就是答案。
Excel.Application xlApp = new Excel.Application();
string filename = xlApp.StartupPath + "''personal.xls";
xlApp.Workbooks.Open(filename, 0, false, 5, Missing.Value, Missing.Value, false,
Missing.Value, Missing.Value, Missing.Value, false, Missing.Value, false,
true, false);
personal.xls工作簿隐藏在后台打开(根据需要),并允许完全使用其附带的所有宏。
一旦我知道该查找什么,我就在这篇文章中找到了一些好的信息:C#/.Net 的Excel XLSTART问题
我不知道这是否是你想要的,但我在Word中遇到了同样的插件问题。我已经解决了,但这可能不是你所需要的。
自动保存文件,然后用进程启动它。
System.Diagnostics.Process.Start("excel.exe", "C:''somefolder''somefolder''personal.xls");
我希望这能奏效。