【问题标题】:VB.NET GetObject(,"Excel.Application") fails to get running ExcelVB.NET GetObject(,"Excel.Application") 无法运行 Excel
【发布时间】:2016-02-07 04:40:58
【问题描述】:

我有一个单独的、可见的、正在运行的 Excel 2013 实例。我已经执行了快速修复在线修复,并等待修复完全完成。

如果我从 Word 运行此 VBA,我可以获得对正在运行的 Excel 应用程序的引用:

Sub WordMacro()
  'This works
  Dim o As Object
  Set o = GetObject(, "Excel.Application")
End Sub

但如果我在 .NET 4.5 下从 Visual Studio 2013 Professional 运行它,它会失败:

Option Strict Off

Module Module1

    Sub Main()

        Dim o As Object
        'Cannot create ActiveX component.
        o = GetObject(, "Excel.Application")

        'But this does create a new, hidden instance
        o = CreateObject("Excel.Application")
    End Sub

End Module

是否有一些我遗漏的安全注意事项,还是我只需要完全卸载/重新安装 Office?

【问题讨论】:

    标签: vb.net excel automation


    【解决方案1】:

    在 .NET 中必须先运行 excel.exe 才能获取实例:

    Shell("C:\Program Files (x86)\Microsoft Office\Office14\Excel.exe", _
                AppWinStyle.MinimizedFocus)
    Xc = GetObject(, "Excel.Application")
    

    【讨论】:

      猜你喜欢
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 2017-08-20
      • 2023-03-16
      • 2013-11-18
      • 2021-12-02
      • 2017-05-20
      • 1970-01-01
      相关资源
      最近更新 更多