Microsoft Access 掲示板

年月で期間抽出コード / 12

16 コメント
views
4 フォロー
12
hiroton 2023/11/13 (月) 17:24:50 0d37e@f966d

上のSQL構文を元にたろうさんのデータでSQLビューでクエリを作成したあと、保存したクエリを開きなおしてみてください。デザインビューで表現する方法が表示されると思いますが、hirotonはサッと作れるようなデザインではなかったですね

あとは、任意項目でフィルタを掛けたい場合なんかはVBAで作ったほうが楽なので、やっぱりSQLそのものを覚えていくと出来ることが増えるでしょう


コードでフィルタを作る場合も、SQL構文のWHERE部分を作ればいいだけなので、上記の形でいいならそのまま、数字部分をコントロール参照に変えるだけですよ

1行で記述してもいいと思いますが、分割しながら記述するなら

    Dim strFilter As String
    
    '範囲開始
    strFilter = strFilter & " AND NOT 年<" & Me!cmb年1
    strFilter = strFilter & " AND NOT (年=" & Me!cmb年1 & " AND 月<" & Me!cmb月1 & ")"
    '範囲終了
    strFilter = strFilter & " AND NOT (年=" & Me!cmb年2 & " AND 月>" & Me!cmb月2 & ")"
    strFilter = strFilter & " AND NOT 年>" & Me!cmb年2
    
    Me.Filter = Mid(strFilter, 6)
通報 ...