2017-03-04 16 views
0

excel object returns count zero請參閱屏幕截圖。c#:通過GetActiveObject(「Excel.Application」)訪問時,Excel對象計數爲0

我需要訪問通過類似於共享點的應用程序打開的文件類型爲PPT,Excel,Word的對象。

雖然我嘗試讓打開Excel文件的數量我總是得到計數爲0。我已經搜查,如果我能得到幫助,終於看到這個Accessing an open Excel Workbook in C#但儘管實施解決方案則返回0

Microsoft.Office.Interop.Excel.Application xlObj = 
(Microsoft.Office.Interop.Excel.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application"); 
while (xlObj.Windows.Count == 0) // This line returns the count as 0 
+0

*「通過與Sharepoint類似的應用程序打開」*>文件是在Web瀏覽器中打開/查看,還是正在下載並在Microsoft Office應用程序中打開文件? – bassfader

+0

文件在ms office中下載並打開。 –

+0

任何想法爲什麼發生這種情況?它適用於Ppt和單詞對象。另外一個觀察,如果我想專注於word和ppt應用程序,我可以使用wordObj.Activate()和pptObj.Activate()爲什麼我不能爲Excel做什麼? xlObj.Activate()不可用 –

回答

0
 Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application(); 
     Microsoft.Office.Interop.Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(@"C:\Users\nagendra.k.kumar\Desktop\Talent Review - Nagendra Kumar.xlsx"); 
     Microsoft.Office.Interop.Excel._Worksheet xlWorksheet = xlWorkbook.Sheets[1]; 
     Microsoft.Office.Interop.Excel.Range xlRange = lWorksheet.UsedRange; 
     MessageBox.Show(xlRange.Rows.Count.ToString());