フォーム上の詳細のところに表示されるクエリのデータの数を、フォームフッターに配置したテキストボックスのコントロールソースに以下の二つのパターンを記入してカウントしようと試みましたが、うまくいきません。以下の例は、今日から30日前までにおけるトレーニング日数をカウントしようとしたつもりです。
どこがまづいのでしょうか?よろしくお願いします。
=DCount("[トレーニング日]",トレーニング・ダイアリー,
"Between Date() And (Date()-30)")
ないし
=DCount("[トレーニング日]",トレーニング・ダイアリー,
" > DateAdd( “d”,-30,Date())”)

ちなみに =Count([トレーニング日]) については、うまくいきます。

A 回答 (2件)

1. 3項目ともダブルクオートで囲う(クオートでも可みたいです)


2. 式は完全に書く(フィールドは省略できません)
3. 式の中のダブルクオートに注意
こんな感じだと思います。

=DCOUNT("[トレーニング日]","トレーニング・ダイアリー","[トレーニング日] between Date() and (Date()-30)")
または
=DCOUNT("("[トレーニング日]","トレーニング・ダイアリー","[トレーニング日] > DateAdd('d',-30,Date())")

この回答への補足

回答、ありがとうございます。
ご教示のとおりでうまくいったのですが、フォームに表示された、実施者Aのデータだけでなく、テーブルにある全実施者のデータをカウントしてしまいました。
下記のように検索ボタンのイベントプロシージャに書いてみたのですが、「型が一致しません」となってしまいます。条件をそれぞれ一つずつで行うとそれぞれの値を返してくるのですが、フォームの実施者ID=テーブル上の実施者IDという条件と期間の条件を一緒にやるとうまくいきません。(イベントプロシージャでなく、コントロールソースでも構いません)よろしくお願いします

With Forms![項目別経過表(トレーニング)4]
![最近30日] = DCount("[トレーニング日]", "トレーニング・ダイアリー", _
"[実施者ID]=" & Me![実施者ID] And "[トレーニング日] between Date() and (Date()-31)")

End With

補足日時:2000/12/22 15:51
    • good
    • 0

大変失礼致しました。

片手落ちな回答でしたね。

"[実施者ID]=" & Me![実施者ID] And "[トレーニング日] between Date() and (Date()-31)")
の部分だけですが
実施者IDが数値型なら
"[実施者ID]=" & Me![実施者ID] & " And [トレーニング日] between Date() and (Date()-31)")

文字型なら
"[実施者ID]='" & Me![実施者ID] & "' And [トレーニング日] between Date() and (Date()-31)")

出先なので、環境が無く確認できませんが・・・・
これでどうでしょうか?
    • good
    • 0
この回答へのお礼

出先からわざわざ回答ありがとうございます。
解決致しました。
また、よろしくお願いします。
良いお年を!

お礼日時:2000/12/24 20:49

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


人気Q&Aランキング