我正在尝试确保传递给我的应用程序的excel文件在其自己的窗口而不是现有的Excel实例中打开。有没有办法告诉进程这样做?以下代码始终使用现有实例(如果存在)。
Process process = new Process();
process.StartInfo.FileName = myExcelFile;
process.Start();
感谢
马特
答案 0 :(得分:9)
请尝试以下操作。
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);