こんにちは、いつも質問ばかりですみません。
WINDOWS2000 で ACCESS 97 ユーザーです。
品番.CSVがあるとします(数千行)
品番は、
100
A100
のように、数字のみやローマ字が入り混じっています。
ACCESS 側に「品番」テーブルを作り、データ型をテキストにします。その上で
ファイル
-外部データの取り込み
-インポート
-次のテーブルに保存する「品番」
でテーブルを指定すると、きちんと入ります。
が、マクロで
テキスト変換
-区切り記号付インポート
-テーブル名「品番」
-ファイル名「品番.CSV」
-フィールド名の設定「はい」
で実行すると、
「品番インポートエラー」テーブルが別に作成され、
A100
を「データ型の変換エラー」と見なしています。
…どうしてでしょう。
No.3ベストアンサー
- 回答日時:
>DoCmd.TransferText acImportDelim, "", "TEMP", "D:\TEMP.CSV", True, ""
インポート定義を作成して
DoCmd.TransferText acImportDelim, "インポート定義名", "TEMP","D:\TEMP.CSV", True
ではどうでしょうか。
>A100を「データ型の変換エラー」と見なしています
数値文字混在のデータで型変換エラーが出でしまうのは最初のデータが数値の場合それ以降を数値として扱ってインポートしようとして文字があるとエラーになるような事例があったと思ったのですが前の事なので定かではありません。
もう一度、#2 さんが教えてくださった「外部テキストファイルとの接続方法」で、インポート定義名が空欄の場合に起こるエラーについて読みましたが、やっぱり定義名を設定するまでには至りませんでした(スキル不足)
が、
> 最初のデータが数値の場合それ以降を数値として扱って
もしかしたら2000以降のバージョンでは改善されているのかもしれませんが、どうもコレが犯人くさいです。
VBE で取り込み前に元CSV データを降順でソートし、ローマ字で始まる品番を上に持ってきてから取り込むと、エラーが起きないことがわかりました。
根本的な解決にはなってないですが(^^;)、助かりました。
ありがとうございました。
No.2
- 回答日時:
インポート定義を作成して保存し、
マクロでインポートする際に、
その定義を指定します。
http://www.f3.dion.ne.jp/~element/msaccess/AcTip …
の
「インポート/エクスポート定義の作成方法」
などを参考にしてみてください。
この回答への補足
ありがとうございました。
参考ページを教えていただきましたが、スキル不足で理解できません(泣)
VBA は、EXCEL 上ではそこそここなせますが、ACCESS はまだこれからの課題なんです。
とりあえず、マクロをモジュール化してみました。
(便宜上テーブル名をTEMP 、取り込みCSVもTEMP.CSV としています。)
DoCmd.TransferText acImportDelim, "", "TEMP", "D:\TEMP.CSV", True, ""
何が悪いのか、ご教授いただけるとありがたいです。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Excel(エクセル) Excelでデータを抽出するに良い方法 9 2023/02/06 12:42
- その他(データベース) c言語の問題です。これを踏まえてコーディングしたいのでおしえていただきたいです。 3 2023/08/03 09:27
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
Microsoft Access エラー 3051
Visual Basic(VBA)
-
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
-
ADOを使ったDBアクセス後のメモリ解放
その他(データベース)
-
-
4
ACCESS VBAでインポート定義の場所
Access(アクセス)
-
5
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
6
VBAの実行時エラー'2522'について
Access(アクセス)
-
7
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
8
Accessで数値型にNULLをInsertするとエラー
その他(データベース)
-
9
「RunSQL」と「Execute」の違い
Access(アクセス)
-
10
Accessのテーブルデータを一気にVBAで追加したい・・
その他(データベース)
-
11
どこにもフォーカスを当てたくない
Access(アクセス)
-
12
更新不可能なクエリに対して更新クエリを実行する方法
Access(アクセス)
-
13
ACCESSでタイトルバーを非表示にする方法
Access(アクセス)
-
14
Accessにインポートしようとするとエラーに
Access(アクセス)
-
15
Access VBAで行ラベルが定義されていないというエラーが出ます
Access(アクセス)
-
16
クエリのデータをテーブルに入れたい
Access(アクセス)
-
17
Accessの桁区切りについて教えてください。
Access(アクセス)
-
18
VBとアクセスでSQL文に変数を使いたいのですが
Visual Basic(VBA)
-
19
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
20
On ErrorでエラーNoが0
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでボタンを押したらエク...
-
エクセルからアクセスにインポ...
-
C#でaccdbファイルのテーブルの...
-
(ACCESS)複数mdbからのデータ...
-
ACCESS テーブルに2行目から取...
-
jspのプログラムについて
-
VBSのデータベース操作で、複数...
-
アクセスでデータをまとめる方法
-
他ファイルのテーブルの情報を...
-
CSVデータの取り込み
-
グループ単位にCSVファイル...
-
Viewにインデックスは張れ...
-
異なるスキーマからデータを抽...
-
データを削除しても表領域の使...
-
postgreSQLのint型は桁数指定が...
-
ORA-00959: 表領域'****'は...
-
Data Pump で大量データインポ...
-
特定のスキーマのテーブルを一...
-
INDEXの無効化
-
SQL*Loaderで、データを加工し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルからアクセスにインポ...
-
ACCESS テーブルに2行目から取...
-
C#でaccdbファイルのテーブルの...
-
他ファイルのテーブルの情報を...
-
(ACCESS)複数mdbからのデータ...
-
テーブルのリンク(ACCESS)
-
アクセスマクロで、csv データ...
-
グループ単位にCSVファイル...
-
jspのプログラムについて
-
Accessでボタンを押したらエク...
-
EXCELで帳票フォームをつくりそ...
-
アクセス初心者に注意点を教え...
-
データ読込時のタイムアウト
-
Access2019でフォームから入力...
-
ACCESS 2003では、テーブルのリ...
-
vb6でaccessデータを他ファイル...
-
ACCESSとエクセルのリン...
-
CSVデータの取り込み
-
csvをSQLiteに取り込むと文字化...
-
リソースファイルとロケールに...
おすすめ情報