'========================================================================================= ' 388 コンボボックスで1文字目一致で入力候補を表示する '----------------------------------------------------------------------------------------- '【ヒント】 ' このマクロは、おためし機能の動作用のコードを含んでいます。(概ね下半分) ' ★★★の行またはサブプロシージャーが、タイトル機能に関係するコードです。(概ね上半分) ' UserForm1にもコードがあり、標準モジュールのコードと連係して動作します '========================================================================================= ' ◆標準モジュールのコード◆ '----------------------------------------------------------------------------------------- Option Explicit Dim タイトル As String Dim スタイル As Long Dim メッセージ As String Dim 応答 As Variant '========================================================================================= Private Sub ユーザーフォームを表示する() '★★★ UserForm1.Show End Sub '========================================================================================= '----------------------------------------------------------------------------------------- Sub おためしマクロ() おためしメッセージを表示する ユーザーフォームを表示する '★★★ End Sub '----------------------------------------------------------------------------------------- Private Sub おためしメッセージを表示する() Worksheets("Title").Select Range("P17").Select 'カーソルを定位置へ移動する タイトル = "500連発 第2弾 サンプルマクロ" スタイル = 64 'vbInformation メッセージ = "コンボボックスの「MatchEntry」プロパティを「1文字目一致検索」に設定して、" & Chr(13) & _ "オートコンプリート機能を利用します。" & Chr(13) & Chr(13) & _ "コンボボックスが表示されたら、" & Chr(13) & Chr(13) & _ "1. ドロップダウンマーク[▼]をクリックして、リストの氏名を見て、" & Chr(13) & _ "2. 1文字目の漢字をキー入力してから、[OK]ボタンをクリックしてください。" 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '----------------------------------------------------------------------------------------- Sub Auto_Close() Application.DisplayAlerts = False '閉じる際に確認メッセージを出さない ActiveWorkbook.Close '現在開いているブックを閉じる End Sub '----------------------------------------------------------------------------------------- '========================================================================================= ' ◆UserForm1のコード◆ '----------------------------------------------------------------------------------------- Private Sub UserForm_Initialize() 'ユーザーフォームを初期化する ComboBox1.MatchEntry = fmMatchEntryFirstLetter '「1文字目一致検索」に設定する End Sub '----------------------------------------------------------------------------------------- Private Sub ComboBox1_Change() Worksheets("Title").Range("E10").Value = ComboBox1.Text '選択結果をセルにセットする End Sub '----------------------------------------------------------------------------------------- Private Sub CommandButton1_Click() If ComboBox1.MatchFound Then '一致する項目がリストの中にあれば Unload Me 'ユーザーフォームを閉じる Else 'なければ MsgBox "やり直してください", vbExclamation, "みつかりません" End If End Sub '=========================================================================================