A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
テキストのインポートもいいのですが、テキストのリンクもお手軽でいいですよ。
ANo.1さんの
DoCmd.TransferText acImportDelim, "インポート定義名"・・・
を
DoCmd.TransferText acLinkDelim, "インポート定義名"・・・
にすると、実際にはテキストを読み込まないテーブルができます。
最初に1度、手動でリンクさせる必要があります。
更新は最初に手動で定義したcsvファイルの位置に新しいcsvファイルをコピーするだけですみます。
良い点は、実際のデータをテーブルに挿入しないので、ファイルのサイズが大きくならないのと、他のプログラムや手動でコピーすれば済む点です。
悪い点は、大きいcsvファイルだと処理に時間がかかる場合があるのと、csvファイルの位置や名前が変わると変更する必要があります。
それと、インポート定義は必ず作った方がいいですよ。
無しでも自動判別で読み込めますが、この自動判別が時々余計な判断するので・・・
No.2
- 回答日時:
#1です。
予め、取り込む先のテーブルを作っておくほうが、楽かも知れませんね。
こまかな点は、
VBAのヘルプやネットで
TransferTextメソッドをキーに参照してみてください。
No.1
- 回答日時:
まずは、インポート定義を作成するために、テストインポートを行います。
その際、CSVファイルの一行目が、データで始まっているなら、メモ帳等のエディタで各フィールド名をカンマで区切って一行目に入力しておきます。
メモ帳よりもエクセルで読み込んで、空の一行目を挿入して記入した方が楽かも知れません。
そのあと、Accsessを寄贈して、
CSVファイルを「ファイル」-「外部データの取込」-「インポート」でCDSVファイルをインポートぢます。
インポートウイザードの最後で、「設定」をクリックしインポート定義を保存しておきます。
あとは、参照ボタンの「クリック時」イベントプロシージャで、
DoCmd.TransferText acImportDelim, "インポート定義名", "インポート先テーブル名","CSVファイルのフルパス",True又はFalse
で取り込めます、
最後にある、「True又はFalse」とは、CSVファイルの一行目がデータかフィールド名なのかを指定します。
True=フィールド名の行あり、False=フィールド名の行なし。
テストインポートでフィールド名を追加しましたが、これは最初だけで、
フィールド名なしでCSVファイルが提供される場合、単にフィールド名をつけたインポート定義を作成したかったためだけなので、
実運用に入ったら、毎回フィールド名を追加する作業は必要ありません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) マクロを教えてください。 7 2023/06/01 19:47
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- その他(プログラミング・Web制作) Accessの代わりのノンプログラムデータベース作成 4 2022/10/21 09:26
- その他(プログラミング・Web制作) python 気象データの取得 2 2023/06/20 23:54
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Visual Basic(VBA) VBA 毎日取得するデータを順番に反映していく方法 6 2023/08/26 16:22
- Excel(エクセル) PowerQueryに詳しい方教えてください(Office365) 1 2022/07/24 21:11
- Excel(エクセル) VBA エラーの件 4 2022/10/10 19:14
- Excel(エクセル) csvに別のExcelの文章を差し込む 2 2023/04/01 16:06
- その他(データベース) 20万行あるデータを動かしたい 2 2023/06/13 15:21
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
カンマ区切りのCSVファイルから...
-
複数のcsvファイルをExcelに一...
-
CSV形式での保存時に”文字列...
-
csvファイルでの日付設定「yyyy...
-
VBAでcsvファイルを読み込んで...
-
csvファイル 項目数取得
-
マクロから出力されるcsvのダブ...
-
複数のCSVファイルのAccessテー...
-
csvファイルを列数ごとに分割す...
-
エクセル形式のファイルの読み込み
-
ADODBでSQL実行前にレコードセ...
-
バッチでCSVを処理する時、空の...
-
csvファイルのデータの間引きを...
-
【C#】パス名で無効な文字
-
PHP.laravelについて
-
COBOLでCSVをインプットにして...
-
【ExcelVBA】UTF-8の文字コード...
-
CSVファイルの項目行を削除...
-
ファイル名ないにあるカンマを...
-
エクセルで運転時間を見たい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カンマ区切りのCSVファイルから...
-
CSV形式での保存時に”文字列...
-
複数のcsvファイルをExcelに一...
-
csvファイル 項目数取得
-
csvファイルでの日付設定「yyyy...
-
バッチでCSVを処理する時、空の...
-
マクロから出力されるcsvのダブ...
-
csvファイルを列数ごとに分割す...
-
エクセル形式のファイルの読み込み
-
csvファイルのデータの一部を取...
-
エクセルVBA 大容量CSVファイル...
-
CSVファイル作成
-
EXCEL|csvで保存→開くcsvを閉じる
-
CSVファイルの項目行を削除...
-
巨大なCSVの加工(指定列のみの...
-
データ解析ソフトRでのファイル...
-
VBAでCSVファイルのデータを集...
-
【ExcelVBA】UTF-8の文字コード...
-
【C#】パス名で無効な文字
-
特定文字を入ってるCSVの特定の...
おすすめ情報