アクセス担当のまみです。
Select CaseってIFよりコードがわかりやすいのでよく使うのですが、条件判断で範囲指定する際に「To」や「Is」を使います。
IFとは違う特徴がありますが、コードがスッキリ見やすいのでおススメです。
toを使って範囲指定する
Select Caseの基本的な使い方は下記の記事をどうぞ!
リボンの①「作成」タブから②「フォームデザイン」を選択します。
ラベルとテキストボックス、ボタンを1つずつ配置しましょう。
ラベル 「1~100までを入力してください」
テキストボックスの名前 「tx数字」
ボタンの名前 「btnチェック」
ボタンの標題 「チェック」
フォームの作り方の詳細は下記の記事をどうぞ!
③「btnチェック」を選択した状態で、プロパティシートの④「イベント」タブを選択して「クリック時」に「イベントプロシージャ」を選びコードの画面を表示します。
「Private Sub btnチェック_Click()」と「End Sub」の間に下記のコードを記載しましょう。
Dim check As Integer check = Nz(Me.tx数字.Value) Select Case check Case 1 To 50 MsgBox "△" Case 51 To 80 MsgBox "○" Case 81 To 100 MsgBox "◎" Case Else MsgBox "1~100までを入力してください" End Select
1~100までの数字が入力されたら、その数字を判断して「△」「○」」「◎」が表示、1~100以外が入力されたら1~100までの入力を求めるプログラムです。
[quads id=2]
コードをコピーされたい場合は下記の記事を参考にしてください。
Isを使って比較する
あっちょっと思いついたことがあるんだ!頑張ってみる!
開始時間
ラベルの標題 | テキストボックスの名前 |
開始時刻 | tx開始時刻 |
時間 | tx開始時間 |
分 | tx開始分 |
秒 | tx開始秒 |
終了時間
ラベルの標題 | テキストボックスの名前 |
終了時刻 | tx終了時刻 |
時間 | tx終了時間 |
分 | tx終了分 |
秒 | tx終了秒 |
経過時間
ラベルの標題 | テキストボックスの名前 |
時間 | tx経過時間 |
分 | tx経過分 |
秒 | tx経過秒 |
ボタン
名前 | 標題 |
時間 | btn計算 |
コントロールソースの設定
単位 | 開始時刻 | 終了時刻 |
時間 | =Hour([tx開始時刻]) | =Hour([tx終了時刻]) |
分 | =Minute([tx開始時刻]) | =Minute([tx終了時刻]) |
秒 | =Second([tx開始時刻]) | =Second([tx終了時刻]) |
詳細は下記の記事をどうぞ!
①「btn計算」を選択した状態で、プロパティシートの②「イベント」タブを選択して「クリック時」に「イベントプロシージャ」を選びコードの画面を表示します。
「Private Sub btn計算_Click()」と「End Sub」の間に下記のコードを記載しましょう。
Dim sec As Integer Dim min As Integer Dim hour As Integer sec = Me.tx終了秒.Value - Me.tx開始秒.Value min = Me.tx終了分.Value - Me.tx開始分.Value hour = Me.tx終了時間.Value - Me.tx開始時間.Value Select Case sec Case Is < 0 Select Case min Case Is > 0 Me.tx経過秒.Value = sec + 60 Me.tx経過分.Value = min - 1 Me.tx経過時間.Value = hour Case Else Me.tx経過秒.Value = sec + 60 Me.tx経過分.Value = min + 60 - 1 Me.tx経過時間.Value = hour - 1 End Select Case Else Select Case min Case Is < 0 Me.tx経過秒.Value = sec Me.tx経過分.Value = min + 60 Me.tx経過時間.Value = hour - 1 Case Else Me.tx経過秒.Value = sec Me.tx経過分.Value = min Me.tx経過時間.Value = hour End Select End Select
Select Caseの使い方はバッチリかな?
だけど経過時間の計算ってもっと簡単にできる方法があるんだよ!
Select Caseの勉強になったってことで・・・
フォームには「F_時間計算」と名前をつけておきましょう。
まとめ
Select Caseって慣れるとコードが見やすくてとっても重宝します。
ぜひ活用してくださいね!