|
お世話になります。
プログラムを実行すると、一行のみインポートされます。
対象のcsvファイルの中身は1行以上あります。
内容は、列名はなく、一行目から実データになります。
▼csv中身
TEST部\TEST室,admin,20100610,A000001,電子帳票名.txt
・
・
・
・
TEST部\TEST室,admin,20100610,A000100,電子帳票名.txt
▼プログラム
Option Compare Database
Option Explicit
Private Sub EventLogAccess_Click()
Dim txtData As String
Dim FNo As Long
Dim arrData As Variant
Dim i As Integer
Dim Con As New ADODB.Connection
Dim Rec As New ADODB.Recordset
Dim strFilePath As String
Dim returnValue As Long
WizHook.Key = 51488399
returnValue = WizHook.GetFileName( _
0, "", "", "", strFilePath, "", _
"CSVファイル (*.csv)|*.csv", _
0, 0, 0, True _
)
WizHook.Key = 0
If returnValue <> 0 Then
Exit Sub
End If
Set Con = CurrentProject.Connection
Con.Execute "Delete From 電子帳票ACCESS実績"
Rec.Open "電子帳票ACCESS実績", Con, adOpenDynamic, adLockOptimistic
FNo = FreeFile
Open strFilePath For Input As #FNo
On Error GoTo ErrHndl
Con.BeginTrans
Do Until EOF(FNo)
Line Input #FNo, txtData
arrData = Split(txtData, ",")
Rec.AddNew
Rec("部門") = arrData(0)
Rec("使用者") = arrData(1)
Rec("日付") = arrData(2)
Rec("帳票コード") = arrData(3)
Rec("帳票名") = arrData(4)
Rec.Update
Loop
Close #FNo
Rec.Close
Set Rec = Nothing
Con.CommitTrans
Con.Close
Set Con = Nothing
Exit Sub
ErrHndl:
Close #FNo
Con.RollbackTrans
Con.Close
Set Con = Nothing
MsgBox "以下のエラーが発生したためロールバックしました。" & vbCrLf & _
Err.Description, vbCritical
End Sub
▼実行結果
TEST部\TEST室,admin,20100610,A000001,電子帳票名.txtTEST部
↑のように、帳票名の後ろになぜか、次行の部門の一部が追加された状態で
一行だけインポートされます。
後、電子帳票名.txtの後ろに追加されるTEST部の文字の大きさが変です。
例えばカーソルをずらすと、漢字の半分のところにカーソルがきます。
通常は、一文字づつカーソルがずれていくと思うのですが、変です。
説明がへたくそで申し訳ないですが、宜しくお願い致します。
|
|