
ExcelVBA ユーザーフォームのテキストボックス(TextBox)は、ユーザーから情報を入力してもらうためのコンポーネントです。 使い方や注意点など、サンプルコードをもとに具体的に解説します。
例えば、名前、数値、日付などを入力するフォームを作成する際に使用します。
📌 「これ、自動化できたらラクなのに…」と思ったこと、ありませんか?
実はその作業、Excelマクロで簡単に自動化できるかもしれません。
「でもマクロって難しそう…」という方のために、完全初心者向けの入門記事をご用意しました!
👇実務で“そのまま使える”テンプレ付きで、コピペするだけ!
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き
目次
Excel VBA ユーザーフォームのテキストボックス利用シーン
以下のようなシーンで利用で表示します。
・データ入力フォーム
名前、住所、電話番号などの情報を入力する。
・計算
入力された数値を使って計算する。
・検索機能
入力したキーワードでデータを検索する。
Excel VBA ユーザーフォームのテキストボックス|使い方とポイント
1. Excelの開発タブで、ユーザーフォームを作成する。
2. ツールボックスから「TextBox」をフォームに配置する。
3. 標準モジュールまたはフォームモジュールにコードを記述する。
・データ型の検証
ユーザーが数値や日付を入力する場合は、そのデータ型をチェックするコードを追加する。
・入力の最大文字数
必要に応じて MaxLength プロパティで制限する。
・空白チェック
必須入力のテキストボックスには空白チェックを行う。
Excel VBA ユーザーフォームテキストボックスのサンプルコード
Option Explicit
Sub ShowUserForm()
UserForm1.Show
End Sub
ユーザーフォームにテキストボックスの入力値を取得・操作するコードを記述します。
自分の実力を客観的にチェックしたい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集をご用意しました。
Option Explicit
Private Sub CommandButton1_Click()
Dim inputText As String
' テキストボックスの値を取得
inputText = Me.TextBox1.Value
' 入力チェック(空白チェック)
If Trim(inputText) = "" Then
MsgBox "テキストボックスに値を入力してください。", vbExclamation
Exit Sub
End If
' 値をシートに書き込む
ThisWorkbook.Sheets("Sheet1").Range("A1").Value = inputText
' フォームを閉じる
Unload Me
End Sub
フォームモジュールにユ数値チェックと追加する。
Private Sub CommandButton2_Click()
Dim inputValue As String
inputValue = Me.TextBox1.Value
' 数値チェック
If Not IsNumeric(inputValue) Then
MsgBox "数値を入力してください。", vbCritical
Exit Sub
End If
' 数値をセルに書き込む
ThisWorkbook.Sheets("Sheet1").Range("B1").Value = CDbl(inputValue)
End Sub
・標準モジュール: ユーザーフォームを呼び出す。
・フォームモジュール: テキストボックス操作や入力データの処理。
テキストボックスのプロパティ(例: TextBox1.Value )で入力値を操作します。フォームのデザインとコードは分けると管理しやすいです。
サンプルコードをコピーして実行すれば、初心者でも動作を確認できます。
「Excel VBAで自動化するコードのベースが習得できる解説書」
Excel VBAエキスパートベーシックとスタンダード、どちらを選べばいいか判断が難しい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集を用意しました。