
ExcelVBA TextBox(テキストボックス)は、フォームやシート上でユーザーが文字や数値を入力できるフィールドを作るためのコントロールです。
テキストボックスを使うことで、ユーザーからの入力を受け取り、そのデータを基に様々な処理を行うことができます。
使い方や注意点など、サンプルコードをもとに具体的に解説します。
📌 「これ、自動化できたらラクなのに…」と思ったこと、ありませんか?
実はその作業、Excelマクロで簡単に自動化できるかもしれません。
「でもマクロって難しそう…」という方のために、完全初心者向けの入門記事をご用意しました!
👇実務で“そのまま使える”テンプレ付きで、コピペするだけ!
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き
目次
Excel VBA TextBox(テキストボックス)の利用
以下のようなシーンで利用されます。
1.ユーザーに名前や日付、数値などを入力してもらい、その入力内容を基にExcelシートを自動的に更新したり計算を行いたい。
2.データをフィルタリングしたり検索するために、特定のキーワードを入力するフィールドが必要。
3.ユーザーフォームを通じて入力データを収集し、シートに保存する。
Excel VBA TextBox(テキストボックス)の利用|使い方とポイント
テキストボックスは、主に「ユーザーフォーム(UserForm)」上に配置して使います。ユーザーがテキストボックスに入力した値は、VBAコードで参照し、さまざまな処理に活用できます。
1.ユーザーが入力する値がテキストボックスに反映されるため、入力内容の制限(数値のみなど)をかけたい場合は、入力チェックのコードを追加する必要があります。
2.入力データの検証を行わないと、誤ったデータが処理されてしまう可能性があるので、事前にデータの正確性をチェックすることが重要です。
Excel VBA TextBox(テキストボックス)のサンプルコード
Option Explicit
Private Sub CommandButton1_Click()
' TextBox1の値をセルA1に出力
Range("A1").Value = TextBox1.Value
' メッセージボックスで入力された値を確認
MsgBox "入力されたテキストは: " & TextBox1.Value
End Sub
自分の実力を客観的にチェックしたい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集をご用意しました。
数値のみを受け付けるテキストボックスの例
Option Explicit
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
' 数字(48-57)以外の入力を無効にする
If KeyAscii < 48 Or KeyAscii > 57 Then
KeyAscii = 0 ' 無効化
MsgBox "数字のみを入力してください"
End If
End Sub
1.TextBox1.Value
テキストボックスに入力された値を取得します。これを使ってシート上に値を出力したり、他の処理に利用することができます。
2.CommandButton1_Click
ユーザーフォーム上のボタンを押した時の処理です。このボタンを押すと、テキストボックスの内容がセルに書き込まれます。
3.KeyPressイベント
数字のみの入力を許可するように制御します。このコードでは、テキストボックスに数字以外が入力された場合に無効にして、ユーザーに警告メッセージを表示します。
ExcelVBAのテキストボックスは、ユーザーからの入力を受け付けてシートのデータに反映させる便利なコントロールです。特に、動的なデータ入力やインタラクティブな機能が必要な場合に活用されます。入力されたデータを正しく扱うために、データ検証やエラーチェックの実装が重要です。
「Excel VBAで自動化するコードのベースが習得できる解説書」
Excel VBAエキスパートベーシックとスタンダード、どちらを選べばいいか判断が難しい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集を用意しました。