'========================================================================================= ' 369 テキストボックスでDBシートへ直接入力する '----------------------------------------------------------------------------------------- '【ヒント】 ' このマクロは、おためし機能の動作用のコードを含んでいます。(概ね下半分) ' ★★★の行またはサブプロシージャーが、タイトル機能に関係するコードです。(概ね上半分) ' 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("DB").Select Range("A3").Select 'カーソルを開始セルへ移動する タイトル = "500連発 第2弾 サンプルマクロ" スタイル = 64 'vbInformation メッセージ = "ユーザーフォームが表示されたら、" & Chr(13) & Chr(13) & _ "氏名などを適当に入力して、" & Chr(13) & Chr(13) & _ "[OK]ボタンを押してください" 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '----------------------------------------------------------------------------------------- Sub Auto_Close() Application.DisplayAlerts = False '閉じる際に確認メッセージを出さない ActiveWorkbook.Close '現在開いているブックを閉じる End Sub '----------------------------------------------------------------------------------------- '========================================================================================= ' ◆UserForm1のコード◆ '----------------------------------------------------------------------------------------- '「OK」ボタンが押されたときに動作するイベントマクロ '----------------------------------------------------------------------------------------- Private Sub CommandButton1_Click() 行 = ActiveCell.Row 列 = ActiveCell.Column Cells(行, 列) = UserForm1.TextBox1.Value '氏名をA列のセルへ Cells(行, 列 + 1) = UserForm1.TextBox2.Value '郵便番号をB列のセルへ Cells(行, 列 + 2) = UserForm1.TextBox3.Value '住所をC列のセルへ UserForm1.TextBox1.SetFocus 'フォーカスを定位置へ Cells(行 + 1, 列).Select End Sub '----------------------------------------------------------------------------------------- '「終了」ボタンが押されたときに動作するイベントマクロ '----------------------------------------------------------------------------------------- Private Sub CommandButton2_Click() Unload Me Worksheets("Title").Select End Sub '----------------------------------------------------------------------------------------- 'ユーザーフォームの右上の[×ボタン]を無効にするマクロ '----------------------------------------------------------------------------------------- Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode <> vbFormCode Then 'マクロから閉じられたのではないなら Cancel = 1 'キャンセルする End If End Sub '=========================================================================================