ユーザーフォームに配置したチェックボックスの使い方としては、基本的にチェックを入れたら指定したセルに文字や数字を記載するために使いますが、その逆の使い方でセルの値を読み取って自動的にチェックを入れることができないのかなと思ったことありませんか?
例えば住所録でDM送付「希望あり」と「希望無し」をチェックボックスで選択しておいて、個人データが呼び出された時に、ユーザーフォームのチェックボックスも自動的にチェックの有無が表示されるようにしたい。
このような場合、チェックボックスのプロパティでは状況判断する設定は無いので、IFステートメントを使って表示させることが可能なので、ご紹介いたします。
基本的なチェックボックスの使い方については重複してしまうので、ここでは省略しますので下記を参考にしてください。
セルの値からチェックボックスの状態を取得しよう
IFステートメントで取得
下の図のようにセルA1に「DM」と入力されていたら、DM希望するチェックがある状態として(True)、空欄だったらDM不要ととしてチェックが無い状態として(False)とします。
そうすることにより、セルA1の値が【DM】となっていたらチェックを入れた状態にして、空欄だったらチェックを外すことができるので、セルの状態によってチェックボックスの状態を自在にコントロールできるようになります。
それでは、ユーザーフォームに配置したコマンドボタン1をクリックするとチェックボックス1がセルA1の状態を認識してチェックの有無ができるようなVBAコードをご紹介します。
Private Sub CommandButton1_Click()
If Range(“A1”).Value = “DM” Then
CheckBox1.Value = True
Else
If Range(“A1”).Value = “” Then
CheckBox1.Value = False
End If
End If
End Sub
- コマンドボタン1がクリックされたら
- もしセルA1の値がDMだったら
- チェックボタン1の状態をチェック有にする
- そうではなく
- もしセルA1の値が空欄だったら
- チェックボックス1の状態をチェック無しにする
- Ifステートメント終了
- Ifステートメント終了
- マクロ終了
もちろん、セルA1の値を消して空欄にしたらコマンドボタンを押してもチェックボックスには何も入りません。
実際にはこのような使い方はしませんが、セルの値によってチェックボックスの状態を取得する事ができるようになるVBAコードを記述することができました。
関連記事
紅葉スポット
-
フリーきっぷで行く埼玉県内の紅葉名所や穴場スポット12選
紅葉絶景めぐりといえば日光や軽井沢が人気紅葉スポットですが、人混みを避けてお得なフリーパスを使って最寄り駅からバスでゆったり紅葉を見に行ってみませんか? 埼玉… -
日光自然博物館へバスで日光駅から紅葉景色へ滞在時間50分
【紅葉見頃】10月中旬~11月下旬 中禅寺湖から竜頭の滝や戦場ヶ原方面と反対方向に行くと、中禅寺湖を一望できる半月山展望台と中禅寺湖展望台があり、その途中の中禅… -
ときわ路パスで行ける茨城県人気紅葉スポット
【茨城県内の紅葉人気ランキング】 関東地方で紅葉名所といえばなんといっても日光ですが、紅葉シーズンになると平日でもいろは坂は大渋滞なのに休日ともなると日光駅周… -
笠間市の紅葉名所・北山公園へ友部駅からバス利用で滞在時間40分
茨城県の観光情報が掲載されているサイトで見つけた「北山公園」へのアクセスが、JR水戸線の宍戸駅から徒歩20分と書いてあったので、訪れてみたら広い北山公園の端っこ… -
フリーパスで12月の茨城紅葉スポットへ
【茨城県内の人気紅葉スポット】 関東地方で紅葉名所といえばなんといっても日光ですが、紅葉シーズンになると平日でもいろは坂は大渋滞なのに休日ともなると日光駅周辺… -
開業90年を超えても現役の日光いろは坂にある明智平ロープウェイ
日光駅や日光東照宮がある市街地と奥日光を結ぶいろは坂の終盤にある位置する「明智平」は、トイレや売店があるドライブインと呼んだ方がいい所なのですが、日光エリア…