将excel导入access中用VB,急!!
我的编码:Private Sub mDataIn_Click()
Dim fs As New FileSystemObject
Dim strData() As String
Dim blnExt As Boolean
Dim i As Integer
frmTableSel.subGetData strData, blnExt
If blnExt = False Then
For i = 0 To UBound(strData) - 1
If fs.FileExists(App.Path & "\" & strData(i) & ".xls") = True Then
gadoCN.Execute "Drop table " & strData(i)
ExportExcelSheetToAccess strData(i), App.Path & "\" & strData(i) & ".xls", strData(i), App.Path & "\RentSys.mde"
Call gsubConnectDBF("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\RentSys.mde;Persist Security Info=False")
Else
MsgBox strData(i) & "数据源文件不存在!"
End If
Next i
End If
End Sub
Public Sub ExportExcelSheetToAccess(sSheetName As String, sExcelPath As String, sAccessTable As String, sAccessDBPath As String)
Dim db As Database
Dim rs As Recordset
Set db = OpenDatabase(sExcelPath, True, False, "Excel 5.0")
Call db.Execute("Select * into [;database=" & sAccessDBPath & "]." & sAccessTable & " FROM [" & sSheetName & "$]")
MsgBox "表" & sAccessTable & "数据导入成功!", vbInformation, "数据导入"
End Sub
Public Sub gsubConnectDBF(sSourceName As String)
Set gadoCN = New ADODB.Connection
gadoCN.ConnectionString = sSourceName
gadoCN.Open
End Sub
可是运行时提示:
编译错误:
用户定义类型未定义!
--------------------编程问答-------------------- 去看看vb自带的例子visdata
从中可以学到很多很多东西,特别是在dao操作这块。 --------------------编程问答-------------------- ado引用了没?
先引用ado 然后定义 例如 dim conn as new adodb.Connection --------------------编程问答-------------------- 你的filesystemobject引用了么
gadoCN,你引用了adodb了么 --------------------编程问答-------------------- 都没说清楚在那一行错了,那行错了就是那个没定义或应用嘛
补充:VB , 基础类