我已使用 Imports Microsoft.Office.Interop 并將 Microsoft excel 的參考添加到專案/解決方案中
以下是宣告
Public xlsfilepath As String
Public oxlsapp As New Excel.Application
Public oxlsworkbook As Excel.Workbook
Public oxlsworksheet As Excel.Worksheet
Public oxlcellsrange As Excel.Range
Dim xchar As String
從現有檔案讀取單元格的程序
oxlcellsrange = oxlsworksheet.Cells(iRow, iCol)
MessageBox.Show(oxlsworksheet.Range(oxlcellsrange).Value)<----Here gives fatal error
System.Runtime.InteropServices.COMException:“來自 HRESULT 的例外:0x800A03EC”
不明白為什么?
附上圖片用于描述更多內容。

uj5u.com熱心網友回復:
Microsoft excel 的參考已添加到專案/解決方案中。
關于 Office 開發有一件令人困惑的事情。您需要參考 Private Interop Assemblies VSTO 與 Primary Interop Assemblies,有什么區別?
您可能錯誤地參考了 COM 參考,它們只應該用于 UnitTesting Mocks of Office: https ://stackoverflow.com/a/47256597/495455
uj5u.com熱心網友回復:
Excel COM 參考設定正確,因為前面的代碼行沒有錯誤。此外,這是一個運行時錯誤。
這是處理 Excel 物件模型時普遍存在的錯誤。您可能會發現類似的帖子,例如HRESULT 中的例外:0x800A03EC 錯誤很受歡迎。
Worksheet.Range屬性接受一個字串,當使用一個引數時,該字串是一個范圍參考。當使用兩個引數時,可以是作為范圍參考的字串,也可以是 Range 物件。例如:
Worksheets("Sheet1").Range("A1").Value = 3.14159
uj5u.com熱心網友回復:
我執行以下步驟,我的錯誤消失/解決了
1-運行 > 輸入 > dcomcnfg > 它打開組件服務視窗(以管理員身份)
在那個視窗
2-轉到組件服務 > 計算機 > 我的計算機 > DCOM 配置
3-所有服務將列出
4 在串列中選擇 Microsoft Excel 并右鍵單擊它。
5-在屬性視窗中轉到 > 身份選項卡
6-我選擇了啟動用戶單選按鈕并應用它。
7-然后我的錯誤解決了。
但這讓我很開心。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/473620.html
