1、将文本文件中的分号都改为半角的逗号,然后将文本文件的扩展名修改为:csv
2、写一个自定义函数:
Public Function ReadCSVFile(ByVal strFilePath As String, ByVal strFileName As String,ByVal strtbName as String)
'===============================================================================
'-函数名称: ReadCSVFile
'-功能描述: 导入csv文件
'-输入参数说明: 参数1:strFilePath As String 路径
' 参数2:strFileName As String 文件名
' 参数3:strtbName As String 数据表名
'-使用语法示例: ReadCSVFile("路径","文件名","数据表名")
'===============================================================================
Dim conn As New ADODB.Connection,rs As New ADODB.Recordset,sqlcsv as string
Dim conn1 As New ADODB.Connection,rs1 As New ADODB.Recordset,sql as string
Dim i As Integer
conn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
"DBQ=" & strFilePath & ";Extensions=asc,csv,tab,txt;Persist Security Info=False" '打开数据链接关键
With rs
.CursorType = 2
.LockType = 3
.CursorLocation = 3
.ActiveConnection = conn
End With
sqlcsv = "SELECT * FROM [" & strFileName & "]"
rs.Open sqlcsv
Set conn1 = CurrentProject.Connection
sql = "Select * From " & strtbName
rs1.Open sql, conn, 1, 3
rs.Move (0)
Do Until rs.EOF
rs1.AddNew
For i = 0 To rs.Fields.count-1
rs1(rs.Fields(i).Name).value = rs.Fields(i).Value
Next
rs.MoveNext
Loop
rs1.UpdateBatch
conn.Close:Set conn = Nothing
conn1.Close:Set conn1 = Nothing
rs.Close:Set rs = Nothing
rs1.Close:Set rs1 = Nothing
End Function
3、调用这个函数实现导入即可。