Open Excel 2016 file failed with HRESULT: 0x800706BE

倖福魔咒の 提交于 2021-01-27 19:58:19

问题


The simple VB.NET code for opening up an existing Excel file consistently failed at open command with the following error:

The remote procedure call failed. (Exception from HRESULT: 0x800706BE)

I've searched Stack Overflow and Microsoft sites for this error, it looks like no one has a definitive answer. But one thing consistent seems to be all happens with 64bit Excel.

Anyway, I am here asking for help with this problem. Below is my very simple code:

Imports Microsoft.Office.Interop.Excel
Dim XLApp As Application = New Application()
Dim XLWkb as Workbook = XLApp.Workbooks.Open("TestExcel.xlsx")
Dim XLSht as WorkSheet = XLWkb.Sheet(1)
XLWkb.Close()
XLApp.Quit()
System.Runtime.InteropServices.Marshal.ReleaseComObject(XLSht)
System.Runtime.InteropServices.Marshal.ReleaseComObject(XLWkb)
System.Runtime.InteropServices.Marshal.ReleaseComObject(XLApp)

The above code kept failing at the XLApp.Workbooks.Open line with that dreadful message.

My windows is Windows 7 Enterprise Service Pack 1, 64-bit
My Excel is 2016 MSO (16.0.6701.1041) 64-bit version.
My MS Office is MS Office 365 ProPlus -en US (2016 version)
My VS is Visual Studio Community 2015 Version 14.0.24720.00 Update 1
Visual Basic 2015 00322-20000-00000-AA181
My project has the following references:

   Microsoft.Office.Core: Microsoft Office 16.0 Object Library
   Microsoft.Office.Interop.Excel : Microsoft Excel 16.0 Object Library
   VBIDE : Microsoft Visual Basic for Applications Extensibility 5.3

Also, I've tried putting the Excel file in my C:\Users personal folder, also tried to use 'CreateObject("Excel.Application")' to create the Excel application, all failed with the same error message upon 'Open' call.

Ok, I also tried this same program on a different Windows 7 Professional 64bit computer, with MS Office 2007 (hence, Microsoft Excel 12.0 Object library etc.), compiled to x86, it also failed at the 'Open' call. But with another common error: HRESULT: 0x80010105 (RPC_E_SERVERFAULT), which has been posted by many other developers.

Then, I tried this same program on a Windows 8 machine and compile to x86 with Office 2007 and it worked just fine.

So, at this point, I think this is a Microsoft Windows 7 bug with the Microsoft.Office.Interop.Excel; so, I am giving up on trying further and switch to dev on Windows version other than 7.

Any insight would be appreciated.


回答1:


The solution to resolve this exception upon calling the 'Open' method on the Excel application is to set Excel application to be visible:

Dim XLApp As Application = New Application()
XLApp.Visible = True

Don't ask me why, because I don't know, anybody who can enlighten me, please do so.




回答2:


You need to disable "FoxitReader PDF Creator COM Add-in" for Excel. It works for me. Source



来源:https://stackoverflow.com/questions/40184351/open-excel-2016-file-failed-with-hresult-0x800706be

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!