Help us understand the problem. What is going on with this article?

Accessのクエリがエラーで開けなくなったら

More than 1 year has passed since last update.

はじめに

以前にAccessを使って作業していたときに、クエリを開こうとしてもエラーが出てしまい開けなくなることがありました。
実行もできなければ、エラーが出て編集することも出来ない。
クエリを作り直すにも、中身のSQL文を見ることができないので困りました。

0001.JPG
このようなエラーが出てクエリを開くことが出来ない

滅多に起きなさそうな現象なので、同じように困った事のある人がいるのか分かりませんが、クエリが開けなくなってしまったときに中身のSQL文を見る方法を紹介したいと思います。

クエリの内容を見る方法

VBEのイミディエイトウィンドウに
? CurrentDb.QueryDefs("クエリ名").SQL
と入力してEnterを押すだけです。

手順

詳しく手順を説明します。(Access2016での手順になります。)
Alt + F11 を押し、Visual Basic Editorを開きます。
0002.JPG

メニューの 表示→イミディエイトウィンドウ を選択し、イミディエイトウィンドウを表示します。
0003.JPG
0004.JPG

イミディエイトウィンドウに
? CurrentDb.QueryDefs("クエリ名").SQL
と入力し、Enterを押します。
("クエリ名"の部分は、SQL文を表示したいクエリの名前を入れてください。)
0005.JPG

SQL文が表示されます。
0006.JPG

エラーの原因

ちなみに私が経験したエラーは、フィールド名の先頭に全角のアラビア数字があるのが原因でした。
エラーを回避する為には全角のアラビア数字から始まるフィールド名を使わないか、フィールド名を[]で囲むとよいようです。

通常であれば全角のアラビア数字から始まるフィールド名を使用したクエリは、フィールド名を[]で囲まないと構文エラーによりそもそも保存が出来ないのですが、なんらかの理由で構文エラーがあるまま保存されてしまい、クエリを実行できず編集することも出来なくなったのです。

この記事を書くためにエラーを再現しようとしたのですが、Access2016では再現できなかったので改善されているのかもしれません。
以前にエラーが出たAccessのバージョンは2007でした。

もし、同じようにクエリが開けず困った人の参考になれば幸いです。

fuk101
星のカービィが好きです
withonoware
「より理想へ」というチャレンジ精神を持ち続ける。
https://withonoware.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away