从显示中阻止Excel应用程序
我有一个wpf应用程序打开/创buildexcel文件和读取/写入他们。 在正常运行的应用程序中, 没有向用户显示excel窗口。
场景:
通过我的应用程序,我浏览到excel文件“AAA.xlsx”,然后应用程序加载它。 然后,我尝试浏览到另一个excel文件, 但在浏览窗口上,我selectexcel文件“BBB.xlsx”,右键单击它并select打开,Excel启动两个文件打开。
如果我做同样的例程,但事先我已经打开Excel程序(加载或不加载文件),只有选定的文件将打开。
下面是构造函数
public ExcelManipulator() { excelApp = new Excel.Application(); excelApp.Visible = false; //not making any difference excelApp.IgnoreRemoteRequests = true; //not making any difference workbooks = excelApp.Workbooks; workbook = workbooks.Open(path); ... }
我的最终目标是我的应用程序加载到用户的屏幕不可见的Excel文件。
我想你是指Excel的单独的“实例”。
尝试以下。
Process process = new Process(); Process.Start("Excel.exe", myExcelFile);
其他选项是,如果你使用Interop(即Microsoft.Office.Interop.Excel.dll),你可以这样做。 这将始终打开新实例中的文件。
Excel.Application excelApp = new Excel.Application(); excelApp.Visible = true; string workbookPath = (@"C:\Sample.xlsx"); Excel.Workbook excelWorkbook = excelApp.Workbooks.Open(workbookPath, 0, false, 5, "", "", false, Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false);