この状態は、初回クエリ実行時に同一フィールドに複数条件を設定した場合にのみ発生しているようです。(例えば、『>=1 AND
<=10』、や『BETWEEN 1 AND 10』 といったような)
実際に同一フィールドに単一条件のみを設定した場合は、通常通りクエリウィザードが開きました。
マイクロソフトのサポートページ等で、クエリウィザードで使用できない演算子を用いていると同様の現象が発生するとのことでしたので、Microsoft
Query画面内でSQL文を確認しましたが問題のありそうな演算子は使用しておりませんでした。
どうにか同一フィールドで複数条件を設定した場合でもクエリウィザードを開かせる方法はないでしょうか?
よろしくお願いいたします。
seven <se...@discussions.microsoft.com> wrote in article
<B8100595-B6A8-4C1E...@microsoft.com> ;
>どうにか同一フィールドで複数条件を設定した場合でもクエリウィザードを
>開かせる方法はないでしょうか?
やりたいことが具体的に書かれていないので, 推測の域ですが,
単純に「任意の Between 範囲を指定して抽出,を簡単に行いたい」
という話であれば,
(1) パラメータクエリを作成し, between [A] and [B] の 2 パラメータ化
(2) 「パラメータをセルから取得する」で[A] と [B]を適当なセルにリンクする。
という作りこみを行えば, ウィザードすらも隠匿して
セルに最小値・最大値を入力して更新ボタン一発でいける話です。
* * * *
以下, 余談っぽく。
>Excel2007で、「クエリの編集」時にクエリウィザードを開こうとすると、
>「クエリウィザードを使って、このクエリを編集することはできません。」
> とダイアログが開き、クエリウィザードが開かずに>Microsoft Query画面が
> 開いてしまいます。
>
> この状態は、初回クエリ実行時に同一フィールドに複数条件を設定した場合
> にのみ発生しているよう>です。(例えば、『>=1 AND <=10』、や
>『BETWEEN 1 AND 10』 といったような)
試行してみましたが, おっしゃるとおり上記のような既存のSQLを編集することに
クエリウィザードは対応していないようです。
「>=1 and <=10」はウィザードで作成は可能ですが, 既存のSQLはウィザードに
読み込まれない。
「Between」は, そもそも句自体がウィザードに機能として組み込まれて
いないようです。
> 実際に同一フィールドに単一条件のみを設定した場合は、通常通りクエリ
> ウィザードが開きました。マイクロソフトのサポートページ等で、クエリ
> ウィザードで使用できない演算子を用いていると同様の現象が発生するとの
> ことでしたので、Microsoft Query画面内でSQL文を確認しましたが問題の
> ありそうな演算子は使用しておりませんでした。
「ウィザードで, 出来ないできないことがある」ではなく,
「ウィザードで出来ることは, ごく限られている」です。
SQL(Select文の構文体系)というのは, 非常に複雑・多機能にわたり,
ちゃんとした構文解析をさせようと思うと, それは専用のデータベースエンジンに
とってさえも大仕事になってくるかと思います。
Excel の一機能であるウィザードに, そこまで求めるのも酷かな, と思ったり。
# 個人的には, Excel 2003 まで役立たずなウィザードが
# いちいち表示されるのが邪魔でしょうがなかった (_o_)
# ショートカットキー一発でSQLウィンドウが表示されて欲しいぐらい。
--
SETO Sohei [ PGP Key ID:0x5DF0FA4D ]
Gobo-city, Wakayama, JAPAN
mailto: s...@creamy.nax.ne.jp
早々にご回答をいただき本当にありがとうございます!
大変勉強になりました。
恥ずかしながら、私自身初心者なもので、ウィザードに頼って作業を行っておりました。
ウィザードを経由せずにデータを抽出する方法があるのですね。
パラメータクエリを勉強してみます。
ありがとうございました。