
VBA初心者です。色々調べてやってみましたがうまくいきません。
どのようにすればいいでしょうか?
よろしくお願いいたします
ACCESSでVBAで、
注文フォルダ内にある 全てのorder_2022で始まるcsvファイルを
Accessの Order_2022というテーブル にインポートする
またファイル名の末尾一部を ファイル名というフィールド(短いテキスト型)に追加する。
(またはファイルごとに番号をふる その際はファイル名フィールドは長整数型)
結果→全てのファイルはインポートできたが、
ファイル名のフィールドには全て最後のファイル名が追加される
ファイル名で失敗したのでファイルごとに番号を振ろうとしたが
1,2,3,4,とは振られず全て4になる(全ファイル数は4ケです)
4回ファイルがインポートされた後、最後に1回ファイル名のフィールドに追加されているようです。
他に試したこと UPDATEではなくINSERT INTO で2種 試す
結果→両方とも 型変換エラー
DoCmd.RunSQL "INSERT INTO Order_2022(ファイル名) VALUES('" & filename & "')"
DoCmd.RunSQL "INSERT INTO Order_2022(ファイル名) VALUES(" & i & ")"
Public Function Import_ALLCSV_Files()
'order_2022のテーブルのデーターを削除します
DoCmd.RunSQL "DELETE * FROM Order_2022"
Dim myFilename As String
Dim myPath As String
Dim i As Integer 'ファイル名用変数
myPath = "C:\Users\y\Desktop\注文\
myFilename = Dir(myPath & "order_202*.csv")
i = 0
Do Until myFilename = ""
i = i + 1
'注文フォルダ内にある全てのorder_2022*ファイルをOrder_2022テーブルにインポートする
DoCmd.TransferText acImportDelim, "Orderインポート定義", "Order_2022", myPath & myFilename, False
'Order_2022テーブルの ファイル名フィールドにファイルごとの番号を追加
DoCmd.RunSQL "UPDATE Order_2022 SET ファイル名=" & i & ""
'実行結果 ALL 4になる、その都度更新されない最後に一回のみ更新される"
’DoCmd.RunSQL "UPDATE Order_2022 SET ファイル名='" & Right(myFilename, 6) & "' "
'ファイル名で試すも実行結果 ALL29.csvになる
' 次のファイル名取得
myFilename = Dir()
Loop
End Function
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
VBA 複数のCSVファイルを一度にインポートするには?
Access(アクセス)
-
ACCESS への複数ファイルのインポートマクロ
Access(アクセス)
-
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
-
4
アクセスと同フォルダのCSVファイルをインポートしたい
Access(アクセス)
-
5
access インポート時、既にあるデータは上書き
Access(アクセス)
-
6
クエリ上でフィールド名が2つあるときの見分け方
Access(アクセス)
-
7
accessへエクセルの複数のシートのインポートの仕方
Access(アクセス)
-
8
Accessのクエリで、replace関数を使い、データの中にある”をブランクに置き換えたいのですが
Access(アクセス)
-
9
Access VBA を利用して、フォルダ内のファイルの名称を変更したい
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトの「%1」と...
-
ExcelVBAのDirでスペース含むフ...
-
コマンドプロンプトでファイル...
-
word VBA ファイル名 保存
-
access,vbaでフォルダ内のファ...
-
コマンドプロンプトで変数が数...
-
【DOSバッチ開発】末尾のタブの...
-
バッチコマンドでファイル名の...
-
バッチファイルで、iniファイル...
-
前日日付のファイルGETバッチ
-
ExifToolでの文字化け対策
-
[DOS] コピー先に同じファイル...
-
フォルダ内の更新日時が一番新...
-
ファイル名に ” を使うと エク...
-
バッチ処理で16進数でファイル...
-
エクセルVBAを使用してJPGファ...
-
テキストファイルのファイル名...
-
ファイル名を該当フォルダ内か...
-
コマンドプロンプトでのCSV...
-
ファイル名を変更して移動させ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドプロンプトの「%1」と...
-
バッチファイルで、iniファイル...
-
コマンドプロンプトでファイル...
-
ftp処理でmove(移動)を行いたい
-
コマンドプロンプトで変数が数...
-
ExcelVBAのDirでスペース含むフ...
-
[DOS] コピー先に同じファイル...
-
ファイル名の頭5桁と同名のフォ...
-
サブフォルダからファイルをコ...
-
フォルダ内の更新日時が一番新...
-
.batでファイル名から抽出して...
-
access,vbaでフォルダ内のファ...
-
バッチファイルで同一フォルダ...
-
バッチコマンドでファイル名の...
-
Windowsコマンドプロンプトで、...
-
スタートアップのファイルをバ...
-
ファイル名に ” を使うと エク...
-
ファイル名を該当フォルダ内か...
-
aタグのhrefにネットワークパス...
-
【DOSバッチ開発】末尾のタブの...
おすすめ情報