• ベストアンサー

フォームにレコード数を表示したい

こんばんは。 フォームに検索フィールドにパラメータを入力してもらい、 Me.Filter = "[氏名] like '*" & Me![氏名フィルタ] & "*'" Me.FilterOn = True で抽出させています。 同フォームにヒット件数を表示したいのですが、 DCount("受注ID", "Q_受注", "[氏名] like '*" & Me![F_氏名] & "*'") でデータ数を表示させています。 もっとスマートな方法がないのかと思い、質問させていただきました。 よろしくお願いいたします。

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

  • ベストアンサー
noname#1296
noname#1296
回答No.2

これはAccessですよね。そうだと過程して・・・ 表示させたいテキストボックスなどのコントロールソースに =Count([受注ID]) ではダメですか?

kyoukorumi
質問者

お礼

できました。。。 単純なことだったんですね。頭が固くて困ります。 本当にどうもありがとうございました。

その他の回答 (1)

回答No.1

SQL = "SELECT 氏名 FROM Q_受注 WHERE 氏名 like '*" & Me!氏名フィルタ & "*';" Me.RecordSource = SQL Set RRS = CurrentDb.OpenRecordset(SQL, dbOpenSnapshot) RRS.MoveLast ヒット件数 = RRS.RecordCount RRS.Close 私は、こちらを使います。 どちらがスマートなのかはわかりませんが...。

kyoukorumi
質問者

お礼

またしても、お世話になります。。。 そんなやり方もあるんですか。勉強になりました。それにしても DonChan777さんはなんでもお出来になるんですね。すごいです。 またよろしくお願いします。。。

関連するQ&A

  • フォーム上にある1つのテキストボックスで複数フィールドの値を抽出する

    フォーム上に配置している非連結のテキストボックスに任意の値を入力して,同じフォーム上に抽出結果を表示させる方法について,1つのフィールドのみを抽出対象にする場合, Private Sub 抽出_Click() 'フィルタを設定 Me.Filter = "担当 ='" & Me!所員抽出 & "'" 'フィルタを実行 Me.FilterOn = True End Sub で可能ですが,抽出したいフィールドが担当フィールドだけでなく,担当2…担当8まである場合,どのように条件をつなげていったら良いでしょうか。 担当…担当8の各フィールドにはデータが入っていたり,いなかったりします。

  • フィルタの情報を保存したい

    Me.Form.Filter = "" Me.Form.FilterOn = を保存したいのですがどうすればいいでしょうか? フォームにテキストのフィールドと 抽出とクリアのコマンドボタンを設置して、フィルタをかけたり解除したりしています。 途中でフォームを閉じても最後にフィルタをかけたなら、 再度フォームを開いたときに最後に検索したワードでフィルタが開く用にしたいし フォームを閉じる前にフィルタを解除したのなら、 再度フォームを開いたときはフィルタが解除された状態にしたいです。 Private Sub cmd_クリア_Click() Me.Form.Filter = "" Me.Form.FilterOn = False DoCmd.Save acForm, Me.Name End Sub Private Sub cmd_抽出_Click() Me.Form.Filter = "フィールド2 like '*" & Me.txt_フィールド2テキスト.Value & "*" & "'" Me.Form.FilterOn = True DoCmd.Save acForm, Me.Name End Sub としてるのに、フィルタの情報が保存されてません。 再度開きなおしたときは、 必ず全レコードが表示されてしまいます。 フィルタの状態を保存する方法を教えてください。ご回答よろしくお願いします。

  • Me.FilterOn = True は先でも後で

    Me.FilterOn = True は先でも後でも問題ないですか? アクセスのvbaでフォームにフィルタをかけるときに 今まで --------------------------------------- Private Sub コマンド2_Click() Me.Filter = "フィールド = '" & "test" & "'" Me.FilterOn = True End Sub --------------------------------------- とコードを書いていましたが --------------------------------------- Private Sub コマンド2_Click() Me.FilterOn = True Me.Filter = "フィールド = '" & "test" & "'" End Sub --------------------------------------- でも機能しました。 という事は、 Me.FilterOn = Trueは Me.Filter の前でも問題ないのでしょうか? Me.FilterOn = Trueは Me.Filter の後と習ったので疑問に思っています。 よろしくお願いいたします。

  • Access 2003 でフォームフィルターがかかりません。

    Access 2003 でフォームフィルターがかかりません。 どなたか助けてください。 アクセス初心者です。 フォームの詳細欄にチェックボックス(フィールド名:伝票チェック)を配置しております。 チェックの入っていないものを表示させたいです。 フォームヘッダーのオプショングループ(フレーム67)に オプションボタン0-オプション値0と オプションボタン2-オプション値2 の2個のオプションボタンを配置してあります。 クリック時のイベントプロシージャに以下のコードを書きました。 Private Sub フレーム67_Click() If Me!フレーム67 = 0 Then Me.Filter = 伝票チェック = 0 Me.FilterOn = True Else Me.Filter = "" Me.FilterOn = True End If End Sub 実行時エラーは出ませんが、データが何も表示されません。 どうすればいいのでしょう??? どなたかお願いします。

  • 実行時エラー '3464': 抽出条件でデータ型が

    フォームにフィルタをかけようとすると 実行時エラー '3464': 抽出条件でデータ型が一致しません。 になります。 Private Sub Form_Load() Me.Form.Filter = "フィールド1 =200" Me.Form.FilterOn = True End Sub コードはこれです。 フィールド1はテキスト型です。 何がダメなのでしょう?

  • アクセスVBA 数値の複数抽出について

    アクセスVBAをつかい[厚み]フィールドの0.1と0.5の2つの抽出を 行いたいのですが、0.1のみの抽出は、できるのですが、複数の抽出方法がわからず悩んでいます。 Me.Filter = "[厚み] = 0.1 " Me.FilterOn = True よろしくお願いします。

  • アクセス Between  Andの使い方 日付型

    フォームをテーブルに紐づけて コマンドボタンを押下したら、日付にフィルタをかけたいのですが、 0件で抽出されます。 フィールド1 2013/05/19 2013/05/20 2013/05/21 というテーブルがあり、 フォーム上のコマンドボタンのクリックイベントは Private Sub コマンド1_Click() Me.Form.Filter = "フィールド1 Between " & Date & " And " & Date + 1 Me.Form.FilterOn = True End Sub です。 2013/05/19 2013/05/20 が抽出されるべきだと思うのですが、なぜ何も抽出されないのでしょうか? エラーにもなりません。

  • Access2016 抽出したレコード

    こんにちは、よろしくお願いします。 フォームのヘッダーに以下のような検索システムを作りました。 Private Sub Cmd_抽出_Click()    Dim strSagasu As String    strSagasu = Me![Txt_抽出]    Me.Filter = "物件名 Like '*" & strSagasu & "*'"    Me.FilterOn = True   End Sub そうしました所、立派に検索できたのですが 元のすべてのレコードがある画面に戻す方法がわからず・・・ どなたか詳しい方、どうかお教えください。 よろしくお願い致します。

  • Access2007 サブフォームでフィルタリングする方法

    お世話になっております。 フォーム上に関連性のないサブフォームがあります。 フォームのコンボボックスでデータを選び検索ボタンをクリックすると、サブフォームのフィールドがコンボボックスのデータで抽出できるようにしたいと思います。 このように書いてみましたが、検索ボタンをクリックするとサブフォームの全てのデータが消えてしまい、実現できませんでした。 Me.FilterOn = True Me.Filter = "(Forms!フォーム!サブフォーム1!コンボ Like '*" & Me.フィールド & "*')" サブフォームでフィルタリングできる方法を教えていただければ幸いです。 よろしくお願いいたします。

  • アクセス 通貨型 ワイルドカード

    アクセスでフィルタをかける時に、フィールドが通貨型でワイルドカードを使いたいのですが Private Sub Form_Load() Me.Form.Filter = "フィールド1 like *" Me.Form.FilterOn = True End Sub だと構文エラーになるのですが、すべての金額を対象にするにはどうすればいいですか?

専門家に質問してみよう