記事内に商品プロモーションを含む場合があります今回はAccessで複数(3つ)のチェックボックスのTrue/Falseの組み合わせによってデータの抽出条件を変えるプログラムを作成しました。IF文やCASE文などでずらっと書くこともできますが、今回は選択状態を数字に換算することによって短いコードで記述することができました。抽出条件(要件)検索条件を入力する画面内に以下のような変化の状態を選択するチェックボックスを用意します。枠囲みしていますがオプショングループでありません。それぞれが独立したチェックボックスです。(複数選択可)検索対象のデータは体重で、見ての通り増加にチェックがあれば体重増加者を抽出。変化なしにチェックがあれば体重に変化のない人を抽出。減少にチェックがあれば体重が減少した人を抽出します。深く考えずに抽出条件を書くならば以下のように、各条件をOR句で連結する方法も可能です。Ifこの書き方をすると、すべてにチェックがあったとき、以下のような条件文になってしまいます。体重<0これはもはや愚の骨頂です。3つチェックは極端な例ですが2つチェックの場合も結構無駄です。本来『体重>=0』で済むべきところが以下のような記述になってしまいます。先ほどのプログラムはもう少し作りこんで条件分岐させてあげれば『体重>=0』のように記述することも可能ですが、かなりIF文のステップ数が多くなってしまって面倒でした。そこで、もう少ししっかり考えることにします。組み合わせによって指定したい条件は決まります。増加と変化なしと減少をそれぞれ、1、2、4の数字に置き換えて合計を計算してみます。3つの組み合わせなので1・2・4を使って合算すれば必ずユニークな数字になります。(ファイルのパーミッションはrwxを124で表しますよね。1,2,3では1と2が指定されたのか3が指定されたのか分かりませんね。SelectIF文ですべて記述しても良いのですが、ちょっと一捻りしたら楽しかったので共有します!あとからコードを読む方の可読性を上げるためにもコメントはしっかり書いておきましょう。MEアズビーパートナーズプログラマー→社内SE→SIerのお仕事をしています。メーカー勤務を経て、中小企業の社内SE、フリーランスなど様々な形態で働いてきました。業務上生まれた困った...を解決してきたTipsを備忘録も兼ねて公開しています。困っている誰かのお役に立てれば幸いです。アズビーパートナーズアズビーパートナーズAccessから帳票を出力する一番一般的な方法は、Accessのレポートを使う方法です。アズビーパートナーズアズビーパートナーズ時間がかかるループ処理を強制終了する方法は、Ctrl+Breakキーを押下する方法が一般的です。アズビーパートナーズアズビーパートナーズAccessのVBAからWebAPIをコールする方法です。13最近の投稿AccessからVBAでCSVファイルエクスポート3027:データベースまたはオブジェクトは読み取り専用なので、更新できません。viewスポンサーサイトPR私も愛用中!家計費と確定申告が必要なものを一緒に管理できて超便利です🎵HOME知識ベースAccess複数チェックボックスの組み合わせによって条件を分岐するスマートな方法アズビーパートナーズとは?社内SE歴10年以上。これまでに培った業務効率化や技術のノウハウを備忘録もかねて公開中です!小さな業務改善が大きな効率化につながることも多々あります。参考にされてくださいね!ご質問等ありましたら気軽にお問合せください。アズビーパートナーズ。