'========================================================================================= '412 トグルボタンを無効にする '----------------------------------------------------------------------------------------- '【ヒント】 ' このマクロは、おためし機能の動作用のコードを含んでいます。(概ね下半分) ' ★★★の行またはサブプロシージャーが、タイトル機能に関係するコードです。(概ね上半分) ' UserForm1にもコードがあり、標準モジュールのコードと連係して動作します '========================================================================================= ' ◆標準モジュールのコード◆ '----------------------------------------------------------------------------------------- Option Explicit Public 有効無効 As String 'Boolean '★★★ Dim タイトル As String Dim スタイル As Long Dim メッセージ As String Dim 応答 As Variant '========================================================================================= Private Sub トグルボタンを無効にする() UserForm1.Show '★★★ End Sub '========================================================================================= '----------------------------------------------------------------------------------------- Sub おためしマクロ() おためしメッセージを表示する 有効無効 = "有効" 'False '★★★ TripleStateへ設定用 トグルボタンを無効にする '★★★ ' おためしメッセージを表示する2 有効無効 = "無効" '★★★ TripleStateへ設定用 トグルボタンを無効にする '★★★ End Sub '----------------------------------------------------------------------------------------- Private Sub おためしメッセージを表示する() Worksheets("Title").Select Worksheets("Title").Range("E8").ClearContents 'クリアする Range("P17").Select 'カーソルを定位置へ移動する タイトル = "500連発 第2弾 サンプルマクロ" スタイル = 64 'vbInformation メッセージ = "トグルボタンに Null値(無効)を設定しません。" & Chr(13) & Chr(13) & _ "試してみてください" 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '----------------------------------------------------------------------------------------- Private Sub おためしメッセージを表示する2() Worksheets("Title").Range("E8").ClearContents 'クリアする メッセージ = "トグルボタンに Null値(無効)を設定します。" & Chr(13) & Chr(13) & _ "試してみてください" 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '----------------------------------------------------------------------------------------- Sub Auto_Close() Application.DisplayAlerts = False '閉じる際に確認メッセージを出さない ActiveWorkbook.Close '現在開いているブックを閉じる End Sub '----------------------------------------------------------------------------------------- '========================================================================================= ' ◆UserForm1のコード◆ '----------------------------------------------------------------------------------------- Private Sub UserForm_Initialize() '★★★ ユーザーフォームを初期化する Worksheets("Title").Range("D8").Value = "" 'クリアする ToggleButton1.Value = True '押されていない状態 If 有効無効 <> "無効" Then ToggleButton1.TripleState = False 'True, Falseのみ有効に設定する Else ToggleButton1.TripleState = True 'Null値の状態を設定できるようにする End If End Sub '----------------------------------------------------------------------------------------- Private Sub ToggleButton1_click() '★★★ トグルボタンがクリックされた If ToggleButton1.Value = True Then Worksheets("Title").Range("D8").Value = "トグルボタンが押されました" Worksheets("Title").Range("D8").Font.ColorIndex = 3 '赤色 ElseIf ToggleButton1.Value = False Then Worksheets("Title").Range("D8").Value = "トグルボタンは押されていません" Worksheets("Title").Range("D8").Font.ColorIndex = 0 '黒色 Else Worksheets("Title").Range("D8").Value = "ありえない事態が発生しました" End If End Sub '----------------------------------------------------------------------------------------- Private Sub ToggleButton1_Change() '★★★ トグルボタンの状態が変った If IsNull(ToggleButton1.Value) Then Worksheets("Title").Range("D8").Value = "トグルボタンは無効です" Worksheets("Title").Range("D8").Font.ColorIndex = 5 '青色 End If End Sub '=========================================================================================