Set Conn = New ADODB.Connection
Conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\bb.mdb"
Conn.Open
strSQL = ""
strSQL = strSQL & " INSERT INTO BB(mm,test)"
strSQL = strSQL & " Select F1 As mm,F2 As Test From [aa.txt] IN '" & App.Path & "\' 'Text;HDR=No;'"
Debug.Print strSQL
Conn.Execute strSQL, , adCmdText
Conn.Close
Set Conn = Nothing
MsgBox "OK!"
Exit Sub
err1:
If Conn Is Nothing Then Set Conn = Nothing
MsgBox "Error!"
End Sub
Private Sub Command2_Click()
Dim Conn As ADODB.Connection
Dim strSQL As String
Dim Rs As ADODB.Recordset
Dim i As Integer
Set Conn = New ADODB.Connection
Conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\bb.mdb"
Conn.Open
strSQL = ""
strSQL = strSQL & " Select F1 As mm,F2 As Test From [aa.txt] IN '" & App.Path & "\' 'Text;HDR=No;'"
Debug.Print strSQL
Set Rs = Conn.Execute(strSQL, , adCmdText)
If Not Rs.EOF Or Not Rs.BOF Then
For i = 0 To Rs.Fields.Count - 1
Debug.Print Rs.Fields(i).Name,
Next i
Debug.Print " "
While Not Rs.EOF
Debug.Print Rs.Fields(0).Value, Rs.Fields(1).Value
Rs.MoveNext
Wend
End If
Rs.Close
Set Rs = Nothing
Conn.Close
Set Conn = Nothing
MsgBox "OK!"
End Sub
如果表不存在:
ADO.Execute "select * into table1 from [Text;database=c:\].test.txt"
如果表存在:
ADO.Execute "insert into table1 select * from [Text;database=c:\].test.txt"
文本文件中第一行为字段名
Dim array1(1 To 7) As String
Private Sub Command1_Click()
Static i As Integer
i = 1
Open "f:\1.txt" For Input As #1
Do While Not EOF(1)
Input #1, array1(i)
i = i + 1
Loop
Close #1
End Sub
至于1,3,5,7行或2,4,6行,则可以通过改变i的初值或步长,比如
Static i As Integer
i = 1
Open "f:\1.txt" For Input As #1
Do While Not EOF(1)
Input #1, array1(i)
i = i + 2
Loop
Close #1 则读出地1,3,5,7行
Static i As Integer
i = 2
Open "f:\1.txt" For Input As #1
Do While Not EOF(1)
Input #1, array1(i)
i = i + 2
Loop
Close #1 ‘读出2,4,6行