2017-06-15 82 views
1

我有一個主要的方法,這只是試圖打開一個Excel工作簿。這個腳本也適用於其他機器,但我無法在這臺機器上運行。它啓動後臺EXCEL.exe進程,但不打開Excel窗口。C#Microsoft.Office.Interop.Excel不會打開Excel窗口

如果我在任務管理器中結束該過程,然後打開excel,它將在文檔恢復窗格的mySheet字符串變量中顯示工作簿。所以開了一些東西我只是看不到它。我在這裏錯過了什麼?

在Visual Studio 2017中使用控制檯應用程序。Excel 2016 64位。

using Excel = Microsoft.Office.Interop.Excel; 

static void Main(string[] args) 
    { 
     try 
     { 
      string mySheet = @"C:\\Users\\dwh002\\Documents\\ZIP_COUNTY_032017.xlsx"; 
      var excelApplication = new Excel.Application(); 
      excelApplication.Visible = true; 
      var workbooks = excelApplication.Workbooks; 
      var workbook = workbooks.Open(mySheet); 
     } 
     catch (Exception) 
     { 
      throw; 
     } 
+0

您是否檢查過程是否以用戶身份運行?不像管理員,本地系統或東西那樣運行。 –

+0

我在Visual Studio中以自己的身份運行它(我是我的計算機上的管理員)。沒有比這更簡單的了。我有一個類似的腳本,可以使用Microsoft.Office.Interop.Outlook程序集打開Outlook郵件窗口,該程序完美地工作。有些事告訴我Interop.Excel程序集有些問題。 –

+0

您可以在最後嘗試一個Console.ReadLine(),以阻止您的應用程序關閉,也許會發生一些不需要的清理。 –

回答

1

移動工作簿下方的Visible = true行。打開工作。我不確定爲什麼這臺機器是唯一有這個順序的代碼有問題的人,但我很高興它的工作。