Microsoft Access 掲示板

「非連結のチェックボックスでレコードを選択する」について

2 コメント
views
4 フォロー

こちらのブログの「非連結のチェックボックスでレコードを選択する」
という記事を参照し、フォームを作成しました。
自作のフォームには条件によって抽出できるcmdを配置してあります。

Aという条件で抽出した後、チェックして印刷したあと、
Bという条件で抽出しなおし、チェックして印刷すると
当然AとBが印刷されます。
Bの検索前に、強制的にチェックをはずすことも考えましたが
抽出条件によっては、はずしたくないこともあります。
できればフォームに表示されていて、かつ、チェックがついて
いるものを対象に印刷したいのですが、なにか方法はありますか?

参照先↓
https://hatenachips.blog.fc2.com/blog-entry-28.html

hrk0517
作成: 2020/07/14 (火) 11:57:53
通報 ...
1

自作のフォームには条件によって抽出できるcmdを配置してあります。

この条件抽出をどのようにしているかによりますが、もし、Filterプロパティに条件を設定して抽出しているのなら、レポートを開くときのWhere条件式引数にFilterの条件を追加すればいいでしょう。

コード例

Private Sub cmdプレビュー_Click()
    Dim strFilter As String
    If Me.txtChkList <> "" Then
        strFilter = "得意先コード In(" & Mid(Me.txtChkList, 2) & ")"
    Else
        MsgBox "選択されたデータはありません。"
        Exit Sub
    End If

    If Me.Filter <> "" And Me.FilterOn Then
        strFilter = strFilter & " AND (" & Me.Filter & ")"
    End If
    DoCmd.OpenReport "R_得意先", acViewPreview, , strFilter
 
End Sub
2
hrk0517 2020/07/15 (水) 10:36:45 ff5d1@6d6d7

hatena様
回答ありがとうございます。
出来ました。感激です。
このようなやり方があるのですね。勉強になりました。