ACCESS VBA でのCSV取込エラー
ACCESS VBA でのCSV取込エラー
ACCESSにてフォルダ内にあるCSVファイルをすべてインポートしようとしています。
インポート定義を作成して、下記のコードを書いてみましたが、
データはすべてインポートされるのですが、
カンマが無視され、フィールドとフィールドの中間で途切れてデータが格納されてしまいます。
またフィールド4は日付形式なのですがこれがインポートエラーになります。
フィールド1 フィールド2 フィールド3 フィールド4
aaa aa,bbb bbb,ccc エラー
2日間ほどネットサーフィンをして調べたのですが、
回避方法が見つからなかったので、お知恵を拝借できますでしょうか?
よろしくお願いいたします。
Private Sub cmd06_Click()
Dim MyFile As String
Dim MyName As String
Dim strFolderName As String
DoCmd.SetWarnings False
DoCmd.OpenQuery "Q09_全CSVデータ削除"
DoCmd.SetWarnings True
strFolderName = GetFolderName() 'フォルダ選択ダイアログを表示
If Len(strFolderName) > 0 Then '選択結果を評価
MyFile = strFolderName & "\*.csv" '【拡張子csvのファイルのみ取得】
MyName = Dir(MyFile, vbNormal)
Do While MyName <> ""
If MyName <> "." And MyName <> ".." Then
If GetAttr(strFolderName & "\" & MyName) <> vbDirectory Then
DoCmd.TransferText acImportFixed, "インポート定義", "T03_全CSVデータ", strFolderName & "\" & MyName, False, "" '【取得したファイルをインポート】
End If
End If
MyName = Dir
Loop
Else
MsgBox "フォルダは選択されませんでした"
End If
MsgBox "データのインポートが終了しました"
End Sub
お礼
いろいろいじっているうちに、イベントで()内にCancel As Integerと書かれているものしか、cancelが実行できないのに気が付きました。 いろいろご回答いただきありがとうございます。 デバッグウィンドウなのですが、私は2000を使っているのでイミディエイトウィンドウのことのようです。 コンパイルは活用していたのですが。 ウォッチやイミディエイトは活用したことがありませんでした。今後、勉強して活用しようと思います。 本当に、ありがとうございました。