2017年09月08日
エクセルVBAチェックボックスの使用方法
東京の人気ホテル・旅館が最大50%OFF
マイクロソフトアクセスの記事はこちら
人気ブログランキングへ
にほんブログ村
チェックボックスを増やしてみましょう。
チェックボックスを3つにしました。
Private Sub CommandButton1_Click()
Dim mymsg As String
Dim myflg As Boolean
myflg = False
If CheckBox1.Value = True Then
mymsg = mymsg & CheckBox1.Caption & vbCrLf
myflg = True
End If
If CheckBox2.Value = True Then
mymsg = mymsg & CheckBox2.Caption & vbCrLf
myflg = True
End If
If CheckBox3.Value = True Then
mymsg = mymsg & CheckBox3.Caption & vbCrLf
myflg = True
End If
If myflg = True Then
mymsg = mymsg & "にチェックが入っています"
Else
mymsg = "チェックは入っていません"
End If
MsgBox mymsg
CheckBox1.Value = False
CheckBox2.Value = False
CheckBox3.Value = False
End Sub
上記のような記述をおこないました。
「vbCrLf」という記述があります。
これは「改行コード」です。
上の記述はパッと見た感じ分かりにくいところがあると思います。
「mymsg = mymsg & CheckBox1.Caption & vbCrLf」
このあたりの内容は分かりますか。
「mymsg = mymsg & CheckBox1.Caption」というのは、
変数「mymsg」に「mymsg」+チェックボックス1のCaption(名前)を入れなさいという意味です。
例えばチェックボックス1とチェックボックス2にチェックが入っているとします。
「mymsg = mymsg & CheckBox1.Caption & vbCrLf」この段階で、
変数「「mymsg」には何も入っていません。
チェックボックス1はTrueなので、変数「mymsg」には「チェック1という名前と改行コード」が入ります。
次にチェックボックス2に移り、「mymsg = mymsg & CheckBox2.Caption & vbCrLf」この処理に入ります。
変数「mymsg」には 「チェック1という名前と改行コード」が入っています。
チェックボックス2にもチェックが入っているので、今回の変数「mymsg」には
「チェック1という名前と改行コード」+「チェック2という名前と改行コード」が入ります。
具体的に書くと
「チェック1
チェック2
改行コード」
という事になります。
次にチェックボックス3に移り、ここはチェックが入ってないのでスルーします。
If myflg = True Then
mymsg = mymsg & "にチェックが入っています"
Else
mymsg = "チェックは入っていません"
End If
上記の部分で最終的なメッセージボックスの内容が決定されます。
今の変数「mymsg」は
「チェック1
チェック2
改行コード」
上記ですね。
これに"にチェックが入っています"が追記され、結果として
上記のような表示になります。
CheckBox1.Value = False
CheckBox2.Value = False
CheckBox3.Value = False
上記は何をしているかというと、チェックボックスに入っているチェックを外しています。
なんとなく使い方が分かってきましたか。
一つ一つ見ていくと理解しやすいと思います。
このように順番に書いて行けば、書いた順番に処理されます。
「CheckBox1.Value = False ‘チェックボックスのチェックを外す」
上記のように「‘」を入れ、コメントを残していけばもっと分かりやすいと思います。
マイクロソフトアクセスの記事はこちら
人気ブログランキングへ
にほんブログ村
チェックボックスを増やしてみましょう。
チェックボックスを3つにしました。
Private Sub CommandButton1_Click()
Dim mymsg As String
Dim myflg As Boolean
myflg = False
If CheckBox1.Value = True Then
mymsg = mymsg & CheckBox1.Caption & vbCrLf
myflg = True
End If
If CheckBox2.Value = True Then
mymsg = mymsg & CheckBox2.Caption & vbCrLf
myflg = True
End If
If CheckBox3.Value = True Then
mymsg = mymsg & CheckBox3.Caption & vbCrLf
myflg = True
End If
If myflg = True Then
mymsg = mymsg & "にチェックが入っています"
Else
mymsg = "チェックは入っていません"
End If
MsgBox mymsg
CheckBox1.Value = False
CheckBox2.Value = False
CheckBox3.Value = False
End Sub
上記のような記述をおこないました。
「vbCrLf」という記述があります。
これは「改行コード」です。
上の記述はパッと見た感じ分かりにくいところがあると思います。
「mymsg = mymsg & CheckBox1.Caption & vbCrLf」
このあたりの内容は分かりますか。
「mymsg = mymsg & CheckBox1.Caption」というのは、
変数「mymsg」に「mymsg」+チェックボックス1のCaption(名前)を入れなさいという意味です。
例えばチェックボックス1とチェックボックス2にチェックが入っているとします。
「mymsg = mymsg & CheckBox1.Caption & vbCrLf」この段階で、
変数「「mymsg」には何も入っていません。
チェックボックス1はTrueなので、変数「mymsg」には「チェック1という名前と改行コード」が入ります。
次にチェックボックス2に移り、「mymsg = mymsg & CheckBox2.Caption & vbCrLf」この処理に入ります。
変数「mymsg」には 「チェック1という名前と改行コード」が入っています。
チェックボックス2にもチェックが入っているので、今回の変数「mymsg」には
「チェック1という名前と改行コード」+「チェック2という名前と改行コード」が入ります。
具体的に書くと
「チェック1
チェック2
改行コード」
という事になります。
次にチェックボックス3に移り、ここはチェックが入ってないのでスルーします。
If myflg = True Then
mymsg = mymsg & "にチェックが入っています"
Else
mymsg = "チェックは入っていません"
End If
上記の部分で最終的なメッセージボックスの内容が決定されます。
今の変数「mymsg」は
「チェック1
チェック2
改行コード」
上記ですね。
これに"にチェックが入っています"が追記され、結果として
上記のような表示になります。
CheckBox1.Value = False
CheckBox2.Value = False
CheckBox3.Value = False
上記は何をしているかというと、チェックボックスに入っているチェックを外しています。
なんとなく使い方が分かってきましたか。
一つ一つ見ていくと理解しやすいと思います。
このように順番に書いて行けば、書いた順番に処理されます。
「CheckBox1.Value = False ‘チェックボックスのチェックを外す」
上記のように「‘」を入れ、コメントを残していけばもっと分かりやすいと思います。
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/6678716
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック