• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Accessのファイルインポートが上手くいきません)

Accessのファイルインポートでエラーが発生する

このQ&Aのポイント
  • Access`2002を使用している際に、エクセルファイルをインポートする際にエラーが発生します。
  • インポート先のAccessテーブルは全てテキスト型で設定していますが、アルファベットが入っている列のデータがエラーとなってしまいます。
  • 対処方法を教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

Access2002・2010(多分2013も)で フィールドのデータ型を設定してあっても インポートの際にはAccessが頑固一徹にデータ型を決めてしまいます。 Excelの場合はデータ行で先頭から8行を空読みして決定しています。 これはレジストリに登録されています。 レジストリエディタを立ち上げ Ctrl + F で Typeguessrows を検索すると(当方では最初に見つけるまで1分程度) WindowsXPなら HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel にあるかと思います。 複数個所(Windows7 & Office2010なら二か所でした)にあることも。 規定値は、8 になっていますので この値を10進数なら30位の適当な大きな値にするか 0 にすればすべてを空読みしてからデータ型の決定を行います。 (0 だとモノによっては時間が掛かるかも) CSVファイルなら、Maxscanrows を検索してみてください。25行になっているかと。 FF1 FF2 1  123 2  123 3  123 4  123 5  123 6  123 7  123 8  123 ここまでで数値型に決定される 9  abc データ型が違うので除外される レジストリの変更をすれば、その後はデータ型に注意しなくともすみますが、 権限の問題でRegedit.exe を立ち上げられない(変更ができない) レジストリの変更に不安 な場合は、 先頭に近いセルの値に一つにシングルクォーターしょんを付け、123 → '123 にしてしまうことです。 そうすればすべてテキスト型で読み込まれます。 なお連続している順番が 数値→数値・・・・・・・・・テキスト だと変換エラーになりますが テキスト→テキスト・・・・・・・数値 だと数値もテキスト型として読んでくれます。 テキスト型はある意味オールマイティです。

shinnnn
質問者

お礼

ありがとうございます。 アルファベットのテーブルヘッダも一緒に読み込ませることで 全てのデータがインポートされました。 あとで削除して対応したいと思います。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • s806099d
  • ベストアンサー率34% (17/49)
回答No.1

私も以前同じことが起こりました。 そのときは、アクセスでインポートする際に、最初の数データでデータ型が判断され、 数値型と読み取られてしまっていました。 同じ現象かはわかりませんが、 読み取れないフィールドの最初のほうのデータに文字列が入っているデータを入れて インポートしてみてはいかがでしょうか?

shinnnn
質問者

お礼

なるほど、データ型のダミーを入れてご認識をさせないようにすると言うことですね。 試してみます、ありがとうございました。

shinnnn
質問者

補足

結果報告です。 事前に「あ」を全てのフィールドに入れてみて、 インポートしましたが、インポートで 変わらずエラーが発生しました。

すると、全ての回答が全文表示されます。

関連するQ&A

専門家に質問してみよう