アプリ版:「スタンプのみでお礼する」機能のリリースについて

アクセスでグラフを作成しています。
日付を指定してグラフ表示をしたいと思い、グラフのSQLを書き換えたところエラーが出てしまいました。
WHERE [発行日] Between [日付はじめ] And [日付終わり]を加えて日付を指定しようとしています。

・SQL書き換え前
TRANSFORM Count(*) AS [カウント] SELECT (Format([発行日],"'YY 年 MMM")) FROM [Qグラフ] GROUP BY (Year([発行日])*12 + Month([発行日])-1),(Format([発行日],"'YY 年 MMM")) PIVOT [進捗状況];

・SQL書き換え後
TRANSFORM Count(*) AS [カウント] SELECT (Format([発行日],"'YY 年 MMM")) FROM [Qグラフ] WHERE [発行日] Between [日付はじめ] And [日付終わり] GROUP BY (Year([発行日])*12 + Month([発行日])-1),(Format([発行日],"'YY 年 MMM")) PIVOT [進捗状況];

グラフが複数有り、他のグラフも同様の書き換えをしました。
他のグラフではエラーは無く動作します。

・他のグラフ書き換え
SELECT (Format([発行日],"'YY 年 MMM")),Count([見積ID]) AS [見積IDのカウント] FROM [Qグラフ] WHERE [発行日] Between [日付はじめ] And [日付終わり] GROUP BY (Year([発行日])*12 + Month([発行日])-1),(Format([発行日],"'YY 年 MMM"));

どう修正すればよいでしょうか?
ご回答よろしくお願いいたします!

A 回答 (3件)

多分、直接sqlを書いてる訳では無く、何かのウィザードを使ってる様なので、的外れかも知れませんが・・・・。



Between "#" & [日付はじめ] & "#" And "#" & [日付終わり] & "#"

または
Between CDate([日付はじめ] ) And CDate( [日付終わり] )
    • good
    • 0
この回答へのお礼

お返事遅くなりました!

ありがとうございます!確認出来ました!

お礼日時:2022/08/22 08:23

>>何が違うのでしょうか?


アクセスを直接書いて単独で動かす場合には、変数や直接指定が日付なら#で囲うのが必須です。

使い方として何かのツールのクエリウィンドウ内でアクセスsqlを書いている場合には、そのツールが型を自動判定して呉れる場合が多いです。

その差だと思います。
自動判定できるかどうかの構文なのか、自動判定できる関数を噛ましてるかどうかです。
    • good
    • 0
この回答へのお礼

囲ってみましたがエラーが出てしまいました…

TRANSFORM Count(*) AS [カウント] SELECT (Format([発行日],"'YY 年 MMM")) FROM [Qグラフ] WHERE [発行日] Between # [日付はじめ] # And # [日付終わり] # GROUP BY (Year([発行日])*12 + Month([発行日])-1),(Format([発行日],"'YY 年 MMM")) PIVOT [進捗状況];

#の入れ方が違うのでしょうか?

お礼日時:2022/08/19 15:08

アクセスに限らず、日付を指定する場合は、日付の部分を#で囲みます。

    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!

今回#を使わずに動作するグラフと動作しないグラフがありました。
何が違うのでしょうか?

お礼日時:2022/08/19 13:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!