最近Accessで大量のデータ加工を行っている。そんなときに「ExecuteTempImexSpecメソッドは失敗しました」というエラーに遭遇した。
僕の場合はインポートするテキストファイルのコードページを変更することで解決した。詳細は以下の記事を参照して頂きたい。
エラー発生時の状況を振り返る
テキストインポートウィザード
データをインポートしようとすると、日本語ヘッダが文字化けしている。
「設定(V)…」をクリックしてみる。
インポート定義
コードページ(C)が西ヨーロッパ言語(Windows)となっている。
日本語(自動選択)と変更して、OKをクリックする。
再びテキストインポートウィザードへ
ふむふむ、ヘッダの文字化けが解決した。
さてと、諸々設定をして、最後に完了ボタンをポチッとな。
テキストインポートウィザード:エラー
なんです?このエラー?意味わかめ。
OKをクリックすると次の画面が。はいはい、失敗したのね。いつもと違い、エラーテーブルも生成されていない。ぐぬぬ。
テキストエディタでエンコード種類を確認する
インポートしようとしているテキストをエディタで開き、エンコード種類を確認すると、次のようになっていた。
対応策「コードページを日本語(自動選択)ではなくテキストと同じにしてみる」
インポート定義
データをインポートする際に「設定(V)…」をクリックして、コードページ(C)を日本語(Shift-JIS)と変更してみる。
インポート実行
どーかなぁ?いぇい!うまくいったぜい!