• ベストアンサー

今日の日付の個数をフォーム上のテキストボックスに表示したい

http://oshiete1.goo.ne.jp/qa5082418.html の続きです。よろしくお願いします。 クエリで今日の日付の個数を求めることができました。 今回は、「今日の日付の個数」を をフォーム上のテキストボックスに表示したいです。 コントロールソースにはどのように記載すればいいのでしょうか? そもそも「Count」なのか「DCount」を使うのかわかりません。 クエリで作ったSQL文をそのままコントロールソースに貼り付けてみましたが、「#Name?」が表示されてしまいました。 ご教授よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • tag1701
  • ベストアンサー率54% (67/123)
回答No.1

このフォームは作成したクエリを基データにしていますか? その場合、クエリは 式1:****というフィールド列が 出ていると思うので、その 式1 をコントロールソースに 設定してみてください。(▼マークでればそこから選んで下さい)

1wer56
質問者

お礼

すいません。 >このフォームは作成したクエリを基データにしていますか? 全くクエリとは関連していないフォームなのです。 ▼マークには何もありません。 説明不足ですいません。

その他の回答 (1)

  • DexMachina
  • ベストアンサー率73% (1287/1744)
回答No.2

テキストボックスのコントロールソースに、以下のような式を入力すれば、ご希望の 結果が得られるかと思います:  =DCount("*", "テーブル1", "[日のみ] Between Date() And Date() + 1")  ※先頭の「=」も必ず入力します(→下記参照)。 【解説】 Count関数には、レコード数をカウントする引数しかないため、集計クエリ以外で 使用する場合、条件の指定はできません。 ですので、検索条件(本件では日付)を指定する場合は、DCountを使用します。 また、コントロールソースに式を指定する場合は、式の先頭には「=」が必須に なります。 (先頭に「=」がない場合は、指定した式はフィールド名とみなされます。この結果、  「DCount(~)」というフィールドが見つからないために、「名前が間違っている」と  いう意味で「#Name?」のエラーが表示されることになります:  SQL文を直接貼り付けたときにエラー表示なったのも、同様の理由です) なお、以下は推測になりますが・・・ 「日のみ」フィールドが名前どおり「(年月)日」の部分しか記録されていないようなら、 Betweenは使用しなくても抽出できます。 (フィールドの書式設定で「時分秒」部分を隠している(→「00:00:00」以外のデータ  がある)場合は、ご提示の通りBetweenが必要ということになりますが) 一応、参考まで:  =DCount("*", "テーブル1", "[日のみ]=Date()")

1wer56
質問者

お礼

できましたできました。 ご丁寧にありがとうございました。

関連するQ&A