在Win 8.1上安装vb6

在Win 8.1上安装vb6,vb6,Vb6,几年来,我一直在教堂办公室的计算机上运行编译过的VB6程序。我在家里的电脑上安装了vb6程序(Win7),这个程序运行起来没有问题。该程序打开Excel电子表格,允许用户操作电子表格上的数据 我的Windows7电脑死机了。我有一台Windows 8.1计算机,并在此计算机上加载了vb6。安装似乎成功,除非运行同一visual basic项目时出现运行时错误“-2147319779未注册自动化错误库”。”我的代码示例如下所示: Dim oExcel As Excel.Application

几年来,我一直在教堂办公室的计算机上运行编译过的VB6程序。我在家里的电脑上安装了vb6程序(Win7),这个程序运行起来没有问题。该程序打开Excel电子表格,允许用户操作电子表格上的数据

我的Windows7电脑死机了。我有一台Windows 8.1计算机,并在此计算机上加载了vb6。安装似乎成功,除非运行同一visual basic项目时出现运行时错误“
-2147319779未注册自动化错误库”。
”我的代码示例如下所示:

Dim oExcel As Excel.Application
    Set oExcel = Excel.Application

    oExcel.Workbooks.Open ("C:\FPCE Financial\FY-2014\2014-01 Financials.xls")
    Application.Visible = True
错误发生在“
设置oExcel=Excel.Application
”行


任何帮助都将不胜感激。

如果您尚未设置对Excel的引用,则需要使用“后期绑定”来创建Excel对象。正如@Lakes所说的——如果你没有安装Office,它将无法正常工作

尝试更改此设置

Dim oExcel As Excel.Application
Set oExcel = Excel.Application
Dim oExcel As Object
Set oExcel = CreateObject("Excel.Application")
到此

Dim oExcel As Excel.Application
Set oExcel = Excel.Application
Dim oExcel As Object
Set oExcel = CreateObject("Excel.Application")

您安装了Microsoft Office吗。您是否已将Excel添加到VB中的“引用”对话框中。您安装的是32位Office版本吗?如果未设置对Office的引用,项目将不会编译。在这种情况下,切换到后期绑定没有任何好处,除非您想要一种更具挑战性的没有智能感知的编码模式。@GSerg-这是没有意义的。后期绑定不需要引用,可以很好地编译。切换的好处是,已编译的项目将不再绑定到特定版本的Office。@Comintern我是说,由于OP的项目在使用早期绑定时进行编译,因此引用显然是在项目设置中设置的,因此建议在未设置引用时做什么是没有意义的。至于不依赖于Office版本,那也是因为您可以控制编译时引用的版本,所以只要您使用支持的最低Office版本进行编译,它就可以工作。@GSerg-您链接到的帖子特别解释了这是一个问题:“要避免这种情况,请始终将文件保存在您支持的最早Office版本下,或者完全删除对其他Office应用程序的引用,并使用后期绑定调用它们。“。引用是Office特定版本的GUID。后期绑定从注册的COM服务器请求注册类的实例。这是COM的基本概念。@Comintern是的,“将文件保存在您支持的最早Office版本下”是我建议的选项,而“或完全删除对其他Office应用程序的引用并使用后期绑定调用它们”是我建议的选项,在这里没有任何额外的好处。此外,MS Office还以随心所欲地处理COM规则而闻名,包括在更新接口和数据时保持相同的ID。