現象
Microsoft Access 2010 データベースでは、ImportExportText マクロを実行するか、保存済みの定義名を使用してテキストファイルをインポート、エクスポート、またはリンクするマクロを実行すると、マクロを実行しようとすると次のエラーが表示さ2010れます。
"テキストファイルの指定 ' <x> ' は存在しません。この定義を使ってインポート、エクスポート、またはリンクすることはできません."' <x> ' の値は、データベースの仕様の一覧に記載されている定義のインデックス番号に対応していることに注意してください。
原因
これは、Microsoft Access 2010 の既知の問題です。
解決方法
Microsoft access 2010 の2011年6月の累積更新プログラムを適用するhttp://support.microsoft.com/kb/2544022: 2011 年6月の累積更新プログラムを適用する前に、access 2010 で TransferText アクションを含むマクロを変更した場合は、更新プログラムを適用した後でも、マクロを実行しているというエラーメッセージが表示されます。 デザインビューでマクロを開くと、テキストの指定が定義インデックス番号 (' x ') に変更されていることがわかります。 問題を修正するには、Access 2010 で適切なテキスト仕様名を再選択し、マクロを保存する必要があります。対策この問題は、以下に説明するいずれかの方法を使用することで対処できます。方法 1: 以前のバージョンの Access でマクロを作成または編集する
-
データベースを Microsoft Access 2007 で開きます。
-
マクロの TransferText アクションセクションで、目的の定義名を選択します。
-
マクロを保存して閉じます。
-
Microsoft Access 2010 でデータベースを開き、マクロを実行します。
方法 2: Visual Basic のマクロではなく、TransferText アクションを使用して、アプリケーションを実行します。VBA コードを使用すると、同じマクロアクションを実行することができます。 たとえば、TransferText acImportDelim、"MyImportSpec"、"Table1"、"C:\FileName.txt" のように、TransferText の使い方の詳細については、次の記事を参照してください。 TransferText メソッド (Access)Http://msdn.microsoft.com/en-us/library/ff835958.aspxメソッド 3: 定義の名前を変更して、仕様の一覧内での位置と一致するようにします。 既存の定義を新しい名前で保存するには (基本的に、仕様の名前を変更する)、次の手順に従います。データベースで、[外部データ] タブを選択し、[インポート &] グループで [テキストファイル] をクリックして、新しいテキストファイルのインポートを開始します。
-
インポートするテキストファイルを選択し、[ok] をクリックします。
-
[詳細設定] をクリックする
-
[定義] をクリックする
-
既存の定義を選択し、[開く] をクリックする
-
[名前を付けて保存] をクリックし、対応するインデックス番号を付けて名前を付けます (1 つ目は "1"、2番目は "2" など)。
-
[定義] をクリックする
-
以前の定義名を選択し、[削除] をクリックします。
-
これで、古い指定がインデックス番号で名前が付けられました
-
インポートウィザードのウィンドウをキャンセルする
-
デザインビューでマクロを開く
-
定義名のコンボボックス内で、新しい定義名を選択します。
詳細情報
以前のバージョンの Access で作成されたマクロは、Microsoft Access 2010 で編集されるまで、Access 2010 で正常に動作します。