![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.3ベストアンサー
- 回答日時:
> criteria部分の " や ’ がどれを囲んでいるのかが はっき分かりません。
= DCount("[出荷日]", "受注", "[出荷先都道府県] = '" _
& Forms![受注]![出荷先都道府県] & "' AND [出荷日] > #95-1-1#")
では、上記を例にして 第3引数のcriteria部分で使われている " と & と ' に
ついて説明します。
ご存知と思いますが、式の意味は、"受注"というテーブルまたはクエリの
[出荷先都道府県]フィールドの値が、"受注"というフォームの[出荷先都道府県]
という名のコントロールの値と一致し、且つ[出荷日]が、95/1/1より以降のものの
レコード数を算出する というものですね。
ここでは、条件として指定する「出荷先都道府県名」をフォームから参照していますが、
これを直接「東京都」を指定するとなれば、criteria部分は、
"[出荷先都道府県] = '東京都' AND [出荷日] > #95-1-1#"
のようになります。
引数は、文字列で指定することになっていますので、全体が " で括られて
全体が一つの文字列です。
また、[出荷先都道府県]フィールドが、テキスト型であるため東京都を ' で括る
必要があります。
それで、カウントするのは、東京都だけでなく、いろいろ変更したいとなれば、
フォームにテキストボックス等を配置し、そこで指定するようにする訳ですね。
このように他のコントロールから値を参照したり、変数の値を使う場合は、
その部分を文字列から外へ出さないといけません。
ですから一旦参照する手前で " を付けて切り、参照部分を連結演算子の & で
連結するのです。 その後方にまた & で残りの文字列を連結します。
つまり東京都の替わりに
" & Forms![受注]![出荷先都道府県] & "
がそっくり入ることになります。
このことは、この他の頭にDが付くDsumなどの定義域集合関数やSQL文にも共通します。
あと是非、デバッグ方法をマスターするようにしてください。
ここでエラーが出ということですが、この場合、この行にブレークポイントを設定して
実行し、イミディエイトウインドウに
? "[出荷先都道府県] = '" & Forms![受注]![出荷先都道府県] & "' AND [出荷日] > #95-1-1#"
と入力し、その行で<Enter>を押して、
[出荷先都道府県] = '東京都' AND [出荷日] > #95-1-1#
と返ってくるか確認します。
Accessのヘルプより詳しくこの部分を解説しているサイトは、見たことないですね。
まぁ、条件指定は、色々なケースがありますから、かなり応用が、必要になります。
>他のコントロールから値を参照したり、変数の値を使う場合は、
その部分を文字列から外へ出さないといけません。
という意味がヘルプを見ただけでは分かっておりませんでした。
ちょっとすっきりした気分です。
とにかく繰り返し使用して応用力をつけたいと思います。
どうもありがとうございました。
No.2
- 回答日時:
>詳しく解説してあるURL
は、適当なものを見つけられなかったのですが・・・・・、
SQLで抽出条件を記述する際に注意すべきなのは、「データ型」です。
SQLは文字列式で記述しますので、数値型の値は文字列型として記述する(""内の文字列は、「"」ではなくて、「""」または「'」で囲む。数値型の変数は CSstr関数で文字列型に変換する。)。日付型の数値は「#」(日付リテラル)で囲む。などの操作が必要になります。
不慣れなうちは、クエリーのデザインビューで抽出条件を設定して、その SQLビューから WHERE 以降を取り出し、データ型を修正(「"」の使い方をチェック)すると良いのではないでしょうか?
で、うまく抽出ができないときは、例えば VBAのモジュールウィンドウで、
Msgbox "抽出条件"
と記述して実行させてみて、実際に Accessで(文字列として)どのように解釈されているかをチェックしてみると、構文の間違いが見つけやすいと思います。
まずは、HELPの質問(A)タブで、「文字列」で検索して「文字列内でのクォーテーション」、
「抽出条件」で検索して「抽出条件の指定」
をよく読んでみてください。
とにかく「試してみる」というのがアクセスの基本でしたね。
楽をしようとせず、コツコツやっていかなければということ
を忘れていました。
ご丁寧な回答ありがとうございました。
No.1
- 回答日時:
Accessのヘルプで「DCount 関数」および「DCount 関数の使用例」の解説では、
だめですか。 かなり詳しく書いていると思うのですが・・・
実際のコードをその部分だけでもここへ書いてみたら如何でしょうか。
ありがとうございます。
確かにヘルプに書いてあるようですがcriteriaの書き方の規則は
読んだだけでは理解できませんでした。
例えばヘルプにある
= DCount("[出荷日]", "受注", "[出荷先都道府県] = '" _
& Forms![受注]![出荷先都道府県] & "' AND [出荷日] > #95-1-1#")
の場合、criteria部分の " や ’ がどれを囲んでいるのかが
はっき分かりません。
あまりにも基本的な質問かもしれませんが
詳しく解説してあるURLがあれば幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelの空文字判定について 7 2023/01/06 13:25
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- Excel(エクセル) Excel 、この式はどのように解釈すればいいのでしょうか 4 2023/02/03 08:53
- Excel(エクセル) エクセル 関数について質問です。 2 2022/10/03 11:14
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- Excel(エクセル) 関数を教えてください 2 2022/12/29 21:01
- Excel(エクセル) エクセルのマイナス表示 3 2022/03/28 16:35
- Excel(エクセル) Excelにて 別シートからのデータ参照方法 2 2022/12/07 13:00
- C言語・C++・C# 関数ポインタの高速化のメリット 7 2023/05/05 20:15
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
ACCESS DCOUNTの抽出条件について
Access(アクセス)
-
【Access】Dcount関数の複数条件で順位を付ける方法について
Access(アクセス)
-
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
-
4
accessで重複を防ぎたい
Access(アクセス)
-
5
Accessのフォーム上にレコード数とレコード番号の表示
その他(データベース)
-
6
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
7
Access サブフォームでの選択行の取得
その他(データベース)
-
8
「#エラー」の回避
Access(アクセス)
-
9
Access フォームのテキストボックスに半角英字のみで入力する設定は
Access(アクセス)
-
10
Accessでテーブルの値をテキストボックスに代入するには?
Access(アクセス)
-
11
Access 別フォームへの再クエリ(更新)がしたい。
その他(データベース)
-
12
Access dcount 複数条件
Access(アクセス)
-
13
ACCESS──メインフォームでサブフォームのレコード件数をカウントしたい
Access(アクセス)
-
14
Access 最後のレコードに到達するまでループ処理を行う方法
Access(アクセス)
-
15
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
16
2つのテーブルに共通するレコードを削除したい
Access(アクセス)
-
17
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
18
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
19
Accessで条件が2つのグループに連番をふる
Access(アクセス)
-
20
Access Dcount関数で引数が指定できない
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
勃起する時って痛いんですか? ...
-
白血球が多いとどんな心配があ...
-
検便についてです。 便は取れた...
-
彼女のことが好きすぎて彼女の...
-
2つの数値のうち、数値が小さい...
-
ある範囲のセルから任意の値を...
-
【Excelで「正弦波」のグラフを...
-
これって喉仏ですか? 私は女性...
-
Excelで""で囲む方法
-
至急!尿検査前日にオナニーし...
-
中出しをするとお腹が痛い・・・。
-
EXCELで条件付き書式で空白セル...
-
甲状腺が腫れているが血液検査...
-
尿検査前日に自慰行為した時の...
-
筋トレするとチンコが縮んじゃ...
-
Excel 数値の前の「 ' 」を一括...
-
エクセル指定した範囲からラン...
-
EXCELで式からグラフを描くには?
-
小数点以下を繰り上げたものを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
首吊りどこ締めるの
-
至急!尿検査前日にオナニーし...
-
白血球が多いとどんな心配があ...
-
尿検査前日に自慰行為した時の...
-
検便についてです。 便は取れた...
-
彼女のことが好きすぎて彼女の...
-
腕を見たら黄色くなってる部分...
-
勃起する時って痛いんですか? ...
-
尿検査の前日は自慰控えたほう...
-
精子が黄色?
-
中出しをするとお腹が痛い・・・。
-
EXCELで条件付き書式で空白セル...
-
口の中に黒い血の塊
-
これって喉仏ですか? 私は女性...
-
2つの数値のうち、数値が小さい...
-
納豆食べた後の尿の納豆臭は何故?
-
EXCELで式からグラフを描くには?
-
小数点以下を繰り上げたものを...
-
excelでsin二乗のやり方を教え...
-
エクセル指定した範囲からラン...
おすすめ情報