我要实现在VBA中从DBF表中得到数据再加到Excel表中,我用的是ADO,我自己机上有装vb6
我在自己机上写的宏是可以使用的,代码如下:
Private Sub CommandButton1_Click()
Dim Cn As New ADODB.Connection, Rs As New ADODB.Recordset
Cn.ConnectionString = "Provider=MSDASQL.1;Driver=Microsoft Visual Foxpro Driver;SourceType=DBF;SourceDB=C:\Bar"
On Error GoTo DealErr
Cn.Open
Rs.Open "Select * From T_BAR.DBF", Cn
Do While Rs.EOF = False
'''''
得到数据进行加入到Excel表格里
'''''
Rs.MoveNext
Loop
Exit Sub
DealErr:
Cn.Close
Set Cn = Nothing
End Sub
在自己机上是可以实现的,没有问题的,可是我拿到别人的机上,那机上是没有装vb6的,我在引用里已经把Microsoft ActionX Data Objects 2.5 Library选中了,
可是在启动这个按钮的时候出错:
"运行时错误...
对象关闭时,不允许操作"
后来我把ado的控件文件msadodc.ocx复制过来并注册到那个机子上,可是还是这个错误,请问有什么办法解决没有
我在自己机上写的宏是可以使用的,代码如下:
Private Sub CommandButton1_Click()
Dim Cn As New ADODB.Connection, Rs As New ADODB.Recordset
Cn.ConnectionString = "Provider=MSDASQL.1;Driver=Microsoft Visual Foxpro Driver;SourceType=DBF;SourceDB=C:\Bar"
On Error GoTo DealErr
Cn.Open
Rs.Open "Select * From T_BAR.DBF", Cn
Do While Rs.EOF = False
'''''
得到数据进行加入到Excel表格里
'''''
Rs.MoveNext
Loop
Exit Sub
DealErr:
Cn.Close
Set Cn = Nothing
End Sub
在自己机上是可以实现的,没有问题的,可是我拿到别人的机上,那机上是没有装vb6的,我在引用里已经把Microsoft ActionX Data Objects 2.5 Library选中了,
可是在启动这个按钮的时候出错:
"运行时错误...
对象关闭时,不允许操作"
后来我把ado的控件文件msadodc.ocx复制过来并注册到那个机子上,可是还是这个错误,请问有什么办法解决没有
应当是Msadox. dll吧?
说明ado已经可以了,dbf没用过,我想应当是该电脑没有dbf的引擎造成的,在该电脑装dbf试一下
不过我建议你去掉那个"On Error GoTo DealErr"来调试一下就知道问题了.