运行时CreateObject("Excel.Application")时出现异常。
有时在同一个会话中短时间内可以正常工作,但是当代码更改时,在同一个会话中就会出现异常;在大多数情况下,从第一次使用新会话执行开始,就会发生异常。
回顾各种提出的具有类似问题的解决方案,我应用了一些,例如:
a)在服务中更改为自动:安装ActivateX并重新启动
b) C:\WINDOWS\system32>regsvr32 scrrun.dll
c) C:\WINDOWS\system32>sfc /scannow
d) 将项目更改为 32 位或 64 位或任意
但只有某些时候有效。
由于某种原因失败; 或不存在,或有其他位置或实例化所需的内容。
从上面看来,我认为这是编译时的 Visual Studio bug 或错误;我与 VS 2022 社区和 VB.net 合作
我非常感谢您为解决此异常问题提供的帮助。
Private Sub PreparaXLSX()
Dim myApp As Excel.Application
myApp = CreateObject("Excel.Application")
End Sub
System.Exception HResult=0x80131500 Message = Cannot create ActiveX component.
+ TargetSite {System.Object CreateObject(System.String, System.String)}
System.Reflection.MethodBase {System.Reflection.RuntimeMethodInfo}
X Cannot call method System.Reflection.MemberInfo.get_CustomAttributes in this context.
采取什么行动才能找到最终的解决方案或消除对 System.Reflection.MethodBase {System.Reflection.RuntimeMethodInfo}
如果您使用 Interop 的早期绑定:
Imports Excel = Microsoft.Office.Interop.Excel
Public Sub PreparaXLSX()
Dim myApp As Excel.Application
Try
myApp = New Excel.Application()
myApp.Visible = True
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
如果您在没有互操作的情况下使用后期绑定:
Public Sub PreparaXLSX()
Dim myApp As Object
Try
myApp = CreateObject("Excel.Application")
myApp.Visible = True
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub