- ベストアンサー
Excelインポート時にエラーが発生する理由と解決方法
- Excelインポート時にエラーが発生する際、ファイルのアクセスや形式の正当性を確認する必要があります。エラーが発生するExcelファイルを修復や形式変更しても解決しない場合は、新規Bookを作成しデータをコピーする方法も試すことができます。
- インポート時のエラーは行数やファイルサイズの問題に起因する可能性があります。試しに行数やサイズを削減してみてもエラーが解消しない場合は、他の要因が考えられます。
- エラーが発生してもExcelファイル自体は通常通り開くことができ、修正や保存も可能です。エラーが解決しない場合は、作成し直すか別の方法でデータのインポートを行うことを検討してください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
Excel、Access 両方とも2010 でExcelファイルは全てXLSX形式で 1.AccessからExcelにエクスポート ← このファイルのインポートOK 2.上記Excelに書式をコピペ ← このファイルのインポートOK 3.上記Excelに対して追加/修正 4.上記ExcelをAccessにインポート ← このファイルのインポートNG した場合でも、インポート時にエラー発生・・・ということですよね? この問題は不明ですが、インポート時にデータが切り捨てられるのは http://okwave.jp/qa/q7543021.html の検証が役立つかもしれません。 なお、 >Docmd.transferText ・・・でインポート定義名(SpecificationName)を >利用できるのですが、TransferSpreadSheetでは無いですね。 ですが、 Docmd.RunSavedImportExport("保存した定義名") が2007からあります。 http://office.microsoft.com/ja-jp/access-help/HA010171498.aspx 私からは以上です。
その他の回答 (3)
- NotFound404
- ベストアンサー率70% (288/408)
なるほど、失礼しました。 XLSX形式でエクスポートするわけには行かないのでしょうか? 2003ユーザーの存在? XLS形式(互換モード)の何かがマズいのでしょうかね。
お礼
NotFound404さま ご回答ありがとうございます。 >XLSX形式でエクスポートするわけには行かないのでしょうか? 説明不足で申し訳ございません。 備考フィールドの文字数が1000程あるセルがあり、Access2003だと問題無くインポートできますが2010だと途中で文字が切れてしまう不具合がありました。 よって、通常の運用ではインポートする際はAccess2003を使用しております。 テストの際は途中で文字が切れてもよいので、Access2010を使用しました。 なお、インポート時に2003、2010ともに同じエラーが出ます。
- NotFound404
- ベストアンサー率70% (288/408)
Excelも使いまわしていると段々とゴミが溜まって行きます。 私のお腹のように気が付くと。。。 なので試された処理が必要になってきます。↓ http://excel-master.net/file-operation-and-save/file-diet/
お礼
NotFound404さま ご回答ありがとうございます。 aokiiさまに返信させて頂きました通り、一つのExcelファイルをずっと使い続けている訳ではございません。 追加/修正したExcelをAccessにインポートし、情報を付加後、Excelにエクスポートし、そのファイルを追加/修正し・・・といった運用です。なので、毎日再作成しているのと同じかと思われます。 なお、AccessからエクスポートしたExcelは罫線や書式設定がされていないため、追加修正したExcelから書式をコピペしてます。 この書式のコピペが原因かと思ったのですが、エクスポート直後のExcelに書式をコピペして、そのファイルをインポートしてみたらエラーになりませんでした。 なので、まとめると 1.AccessからExcelにエクスポート ← このファイルのインポートOK 2.上記Excelに書式をコピペ ← このファイルのインポートOK 3.上記Excelに対して追加/修正 4.上記ExcelをAccessにインポート ← このファイルのインポートNG となります。 Excelを編集してるときに何か不具合(ファイル破損?)が生じているのかもしれません。
- aokii
- ベストアンサー率23% (5210/22063)
原因としてはxlsとxlsxの互換性問題が考えられます。フィールド(見出し)、行、ファイルサイズとも大きいですね。 2003は、256列、65536行、1セルあたりの文字数は32767文字です。 10MBを超えるようなファイルを使うと破損確立が高くなり危険です。
お礼
aokiiさま ご回答ありがとうございまいます。 確かに列数、行数ともに多いのですが、6、7年前から先週まで問題なく運用できておりました。 日々Excelファイルに追加/修正を行っている為、以前にくらべるとサイズは大きくなってますが。。 なお、一つのExcelファイルをずっと使い続けている訳ではなく、追加/修正したExcelをAccessにインポートし、情報を付加後、Excelにエクスポートします。このファイルを翌日使って追加/修正し・・・という運用です。 質問にも記載致しましたが、数千行を削除してサイズを減らした状態でインポートしてみましたが、それでもエラーとなったので、確かにサイズが大きくなることによって破損しやすくなるのかもしれませんが、今回の色々試した結果からするとサイズはあまり関係ないように見受けられます。
お礼
NotFound404 ご回答ありがとうございます。 >http://okwave.jp/qa/q7543021.html についてですが、これは以前私が投稿させて頂いたものですね(笑 もう2年経っているのに未だ検証もしておらず。 Office2003のサポート切れる前に対処しないとと思っておりましたが、なんだかんだでズルズル2003を使っている次第です。 インポートNGの件ですが、水曜は問題なくインポートでき、昨日はNGでした。 Excelの更新は普段通りにやったということなので、何か特別に対処してインポートできたという訳ではありません。なので、余計に訳分からなくなってきました。 とりあえずもう少し調べたいと思います。 あと、近日中に2010に切り替えるようにしたいと思います。 色々ありがとございました。