No.1ベストアンサー
- 回答日時:
CSVファイルはDOS時代からの、ステートメントコマンドで読めます。
いま事情でアクセスが使えないので、エクセルでテスト
しました。参考になればと上げます。
アクセスにエクセルからインポートすることも出来ることですし。
複数あるCSVファイル名をどう指定するか
キーインで聞くか、下記のように配列に定義するか
方法が決めかねていますが。
TransferTextなど使わず、GoTo文多用の拙いもので済みません。
途中のMsgboxは確認用ですから、本番では削除。
Arrayの中のファイル名は自分の場合のものを
入れる、My Documentsのフォルダ名も変える
こと。
Line Input#文を使ったところがミソです。
Sub test01()
i = 1
f = Array("csv1", "aaa", "a11")
k = 0
p05:
Open "c:\my documents\" & f(k) & ".csv" For Input As #1
p02:
If EOF(1) Then GoTo p01
Line Input #1, a
MsgBox a
s = 1
j = 1
p03:
p = InStr(s, a, ",")
If p = 0 Then p = Len(a) + 1
Cells(i, j) = Mid(a, s, p - s)
If p > Len(a) Then GoTo p04:
s = p + 1
j = j + 1
GoTo p03
p04:
i = i + 1
GoTo p02
p01:
Close #1
k = k + 1
If k <= UBound(f) Then GoTo p05
End Sub
この回答への補足
i = 1
f = Array("社員1", "aaa", "a11")
k = 0
p05:
Open "c:\mydata\" & f(k) & ".csv" For Input As #1
上記の形で実施しましたところ、「社員1.csv」のデータはインポートしましたが、次の2つ目の「社員2.csv」のファイルを読み込めませんでした。(エラーメッセージ”ファイルがみつかりません”)全くの素人のため力不足ですみません。
解決策を教えていただけたらうれしいです。
No.3
- 回答日時:
#1です。
f= Array("社員1", "aaa", "a11") と2番目の要素をそのままにしてはいけません。aaaは私の個人的な、偶々在ったファイルの名ですから。
f = Array("社員1", "社員2", "a11") と変え、また
a11も貴殿の場合の3番目のファイル名を””で囲って置換えてください。あと4つ目以降も同じく、カンマで区切って付け加え、長くなるようなら、スペースとアンダーバーの「継続行の約束書式」を使い次行に続けます。
まあそれにしても限りがあります。数十以上の時は、私なら、エクセルのA列セルに名前を入れて読むとかします。
またあるフォルダの中のCSVファイル名を捕まえるプログラムもDIR関数で出来ます。過去の質問に例があるはずです。
素人で初めての取り組みでしたが、ご指導のとおりDIR関数を使った過去の質問を参考に問題解決できました。素早い対応と親切さに感謝いたします。これを機会に次ぎの新たな挑戦をしたいと思います。本当にありがとうございました。
No.2
- 回答日時:
#1です。
#1を上げて思い出しました。カンマで区切られた文字列を、区切りで取り出す方法にSplit関数が使えます。下記などを参考に使っていただけば、プログラムが判りやすく、短くなるでしょう。Sub test02()
a = "aa,sss,ddd,1"
' a = "1,23,sdf2,22"
b = Split(a, ",")
MsgBox b(0)
MsgBox b(1)
MsgBox b(2)
MsgBox b(3)
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- Access(アクセス) Accessにインポートした複数のテーブルを表示させる方法が分かりません。 1 2023/01/30 20:22
- Access(アクセス) Access VBA を利用して、フォルダ内のファイルの名称を変更したい 1 2023/08/03 08:27
- その他(データベース) Accessのリンクテーブルについて 1 2023/05/20 16:10
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Outlook(アウトルック) 【 Windows 10 】アドレス帳に正しくインポートを完了させたい。 3 2023/04/23 13:41
- その他(データベース) Microsoft Accessについて 1 2022/06/06 16:20
- Excel(エクセル) Power Query で取り込むデータのパスを相対パスに出来ませんか? 3 2022/04/05 18:31
- Access(アクセス) スキルシートのエクセルの項目に 2 2023/04/04 22:41
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
VBA 複数のCSVファイルを一度にインポートするには?
Access(アクセス)
-
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
ACCESS への複数ファイルのインポートマクロ
Access(アクセス)
-
-
4
access インポート時、既にあるデータは上書き
Access(アクセス)
-
5
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
6
【Access】クエリで抽出したデータをCSV形式でエクスポートできますか?
Access(アクセス)
-
7
Accessのデータのインポートで重複分を排除
その他(Microsoft Office)
-
8
ACCESSでデータ読み取り専用を解除する方法
その他(データベース)
-
9
Acccessで2つのテーブルから1つのフォームをつくりたい
Access(アクセス)
-
10
Accessのリンクされたテーブルでリンク先ではデータを変更出来ないようにするには?
Access(アクセス)
-
11
Accessのテーブル、クエリをCSV形式でエクスポートしたい
Access(アクセス)
-
12
accessへエクセルの複数のシートのインポートの仕方
Access(アクセス)
-
13
ACCESS VBA CSVのインポート ファイル名指定→ファイル名選択
その他(データベース)
-
14
ACCESS で 項目名を出力せずにエクスポートしたい
その他(データベース)
-
15
datファイルからaccessにインポートする方法
Access(アクセス)
-
16
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
17
Access インポート
Access(アクセス)
-
18
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
カンマ区切りのCSVファイルから...
-
CSV形式での保存時に”文字列...
-
csvファイル 項目数取得
-
バッチでCSVを処理する時、空の...
-
複数のcsvファイルをExcelに一...
-
エクセル形式のファイルの読み込み
-
CSVファイルの項目行を削除...
-
csvファイルでの日付設定「yyyy...
-
csvファイルから列を選択しchar...
-
CSV形式のファイルを読み込んで...
-
マクロから出力されるcsvのダブ...
-
CSVファイル作成
-
データ解析ソフトRでのファイル...
-
【ExcelVBA】UTF-8の文字コード...
-
エクセルVBA 大容量CSVファイル...
-
CSVファイルをMDBに取り込む
-
VBSでソート&ファイル分割
-
VB6.0 CSVファイル読み込みに...
-
C# datagridview csv 読込
-
複数のCSVファイルのAccessテー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カンマ区切りのCSVファイルから...
-
複数のcsvファイルをExcelに一...
-
CSV形式での保存時に”文字列...
-
csvファイル 項目数取得
-
csvファイルでの日付設定「yyyy...
-
マクロから出力されるcsvのダブ...
-
バッチでCSVを処理する時、空の...
-
csvファイルのデータの一部を取...
-
エクセルVBA 大容量CSVファイル...
-
csvファイルを列数ごとに分割す...
-
PHP.laravelについて
-
COBOLでCSVをインプットにして...
-
COBOL85でのCSVファ...
-
複数のCSVファイルのAccessテー...
-
データ解析ソフトRでのファイル...
-
【C#】パス名で無効な文字
-
VBAでcsvファイルを読み込んで...
-
特定文字を入ってるCSVの特定の...
-
CSVファイル作成
-
【エクセル マクロ】読み込ん...
おすすめ情報