MS Office 14.0在VB 6程序中引用对象库

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

在我的开发系统中,安装了Microsoft Office 2010(14.0库),在那里我的新代码被编译并正常工作。

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

我试图安装相同的VB 6程序的设置,并运行在不同的机器,其中14.0库不存在,因为MS Office 2000安装在该机器(12.0库)。

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

现在,我需要在这方面的帮助,我怎样才能在新机器上安装14.0对象库,以便程序运行的引用。

或者,请给我build议任何其他方法来完成它..

谢谢

问题是你正在使用Early Binding。 你必须使用Late Binding。

在早期绑定中,您设置了一个对Excel对象xx.xx库的引用,而在Binding后期,您不需要。

这是两个例子

早期绑定

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 

这里是关于早期绑定与晚期绑定的MSDN链接。