Excel VB6程序中的MS Office 14.0对象库引用

Excel VB6程序中的MS Office 14.0对象库引用,excel,vb6,Excel,Vb6,我的VB6程序代码是指14.0对象库,它是编译和执行的。使用新代码(访问14.0库)工作正常 在我的开发系统中,安装了MicrosoftOffice2010(14.0库),我的新代码在这里编译并运行良好 我正在使用这些库将文档转换为pdf 我正在尝试安装同一个VB6程序的安装程序,并在不同的机器上运行,其中不存在14.0库,因为MS Office 2000安装在该机器上(12.0库) 安装程序正在成功安装,但程序在引用14.0库时抛出错误 现在,我需要这方面的帮助,那就是,我如何在新机器上安装1

我的VB6程序代码是指14.0对象库,它是编译和执行的。使用新代码(访问14.0库)工作正常

在我的开发系统中,安装了MicrosoftOffice2010(14.0库),我的新代码在这里编译并运行良好

我正在使用这些库将文档转换为pdf

我正在尝试安装同一个VB6程序的安装程序,并在不同的机器上运行,其中不存在14.0库,因为MS Office 2000安装在该机器上(12.0库)

安装程序正在成功安装,但程序在引用14.0库时抛出错误

现在,我需要这方面的帮助,那就是,我如何在新机器上安装14.0对象库,以便程序运行时引用在那里

或者,请向我推荐任何其他方法来完成


谢谢

问题是您正在使用早期绑定。您必须使用后期绑定

在早期绑定中,可以设置对Excel对象xx.xx库的引用,而在后期绑定中则不设置引用

这是两者的一个例子

早期绑定

Sub EarlyBindingEx()
    Dim oXLApp As Excel.Application
    Dim oXLWb As Excel.Workbook
    Dim oXLWs As Excel.Worksheet

    '~~> Establish an EXCEL application object
    On Error Resume Next
    Set oXLApp = GetObject(, "Excel.Application")

    '~~> If not found then create new instance
    If Err.Number <> 0 Then
        Set oXLApp = New Excel.Application
    End If
    Err.Clear
    On Error GoTo 0

    '~~> Show Excel
    oXLApp.Visible = True

    '~~> Open files
    Set oXLWb = oXLApp.Workbooks.Open("C:\Sample.xlsx")

    '~~> Set the relevant worksheet
    Set oXLWs = oXLWb.Sheets(1)

    '
    '~~> Rest of your code
    '
End Sub
Sub LateBindingEx()
    Dim oXLApp As Object
    Dim oXLWb As Object, oXLWs As Object

    '~~> Establish an EXCEL application object
    On Error Resume Next
    Set oXLApp = GetObject(, "Excel.Application")

    '~~> If not found then create new instance
    If Err.Number <> 0 Then
        Set oXLApp = CreateObject("Excel.Application")
    End If
    Err.Clear
    On Error GoTo 0

    '~~> Show Excel
    oXLApp.Visible = True

    '~~> Open files
    Set oXLWb = oXLApp.Workbooks.Open("C:\Sample.xlsx")

    '~~> Set the relevant worksheet
    Set oXLWs = oXLWb.Sheets(1)

    '
    '~~> Rest of your code
    '
End Sub
Sub-EarlyBindingEx()
Dim-oXLApp作为Excel.Application
将oXLWb设置为Excel.工作簿
将oXLWs设置为Excel.Worksheet
“~~>建立EXCEL应用程序对象
出错时继续下一步
设置oXLApp=GetObject(,“Excel.Application”)
“~~>如果找不到,则创建新实例
如果错误号为0,则
设置oXLApp=New Excel.Application
如果结束
呃,明白了
错误转到0
“~~>显示Excel
oXLApp.Visible=True
“~~>打开文件
设置oXLWb=oXLApp.Workbooks.Open(“C:\Sample.xlsx”)
“~~>设置相关的工作表
设置oXLWs=oXLWb.图纸(1)
'
“~~>其余的代码
'
端接头
后期绑定

Sub EarlyBindingEx()
    Dim oXLApp As Excel.Application
    Dim oXLWb As Excel.Workbook
    Dim oXLWs As Excel.Worksheet

    '~~> Establish an EXCEL application object
    On Error Resume Next
    Set oXLApp = GetObject(, "Excel.Application")

    '~~> If not found then create new instance
    If Err.Number <> 0 Then
        Set oXLApp = New Excel.Application
    End If
    Err.Clear
    On Error GoTo 0

    '~~> Show Excel
    oXLApp.Visible = True

    '~~> Open files
    Set oXLWb = oXLApp.Workbooks.Open("C:\Sample.xlsx")

    '~~> Set the relevant worksheet
    Set oXLWs = oXLWb.Sheets(1)

    '
    '~~> Rest of your code
    '
End Sub
Sub LateBindingEx()
    Dim oXLApp As Object
    Dim oXLWb As Object, oXLWs As Object

    '~~> Establish an EXCEL application object
    On Error Resume Next
    Set oXLApp = GetObject(, "Excel.Application")

    '~~> If not found then create new instance
    If Err.Number <> 0 Then
        Set oXLApp = CreateObject("Excel.Application")
    End If
    Err.Clear
    On Error GoTo 0

    '~~> Show Excel
    oXLApp.Visible = True

    '~~> Open files
    Set oXLWb = oXLApp.Workbooks.Open("C:\Sample.xlsx")

    '~~> Set the relevant worksheet
    Set oXLWs = oXLWb.Sheets(1)

    '
    '~~> Rest of your code
    '
End Sub
Sub-LateBindingEx()
作为对象的Dim-oXLApp
将oXLWb设置为对象,将oXLWs设置为对象
“~~>建立EXCEL应用程序对象
出错时继续下一步
设置oXLApp=GetObject(,“Excel.Application”)
“~~>如果找不到,则创建新实例
如果错误号为0,则
设置oXLApp=CreateObject(“Excel.Application”)
如果结束
呃,明白了
错误转到0
“~~>显示Excel
oXLApp.Visible=True
“~~>打开文件
设置oXLWb=oXLApp.Workbooks.Open(“C:\Sample.xlsx”)
“~~>设置相关的工作表
设置oXLWs=oXLWb.图纸(1)
'
“~~>其余的代码
'
端接头

是一个关于早期绑定与后期绑定的MSDN链接。

@DownVoter:请发表评论?@pnuts:我对此表示怀疑。最近经常有人对我投反对票:)