Excel VBA のインプットボックスは、ユーザーから情報を入力してもらうためのダイアログボックスです。Excel VBAでは、ユーザーにデータや文字列を入力させる際に使用します。具体的な使い方や、注意点やサンプルコードを紹介します。
以下のようなシーンで利用されます。
・ユーザーから特定の値を入力してもらう必要がある
・プログラムの動作をユーザーの入力に基づいて変更する
・データの取得や処理において、ユーザーの入力が必要
インプットボックスは InputBox 関数を使用して表示します。基本的な構文は次の通りです
Dim userInput As String
userInput = InputBox(prompt, [title], [default], [xpos], [ypos], [helpfile], [context])
・prompt:ユーザーに入力を促すメッセージ
・title(オプション):ダイアログボックスのタイトル
・default(オプション):デフォルトで表示される入力値
・xpos(オプション):ダイアログボックスのX座標
・ypos(オプション):ダイアログボックスのY座標
・helpfile(オプション):ヘルプファイルのパス
・context(オプション):ヘルプコンテキストID
・ユーザーがキャンセルボタンを押した場合、InputBox は空の文字列を返します。
・入力された値が期待される形式(数値や日付など)であることを確認する必要があります。
・入力値のバリデーションを行い、不適切な入力があった場合は再入力を促すようにすることが重要
Option Explicit
Sub GetUserInput()
Dim userInput As String
Dim num As Double
' インプットボックスを表示し、ユーザーの入力を取得
userInput = InputBox("数値を入力してください:", "入力ボックス", "0")
' ユーザーがキャンセルボタンを押した場合
If userInput = "" Then
MsgBox "入力がキャンセルされました。"
Exit Sub
End If
' 入力値が数値かどうかをチェック
If IsNumeric(userInput) Then
num = CDbl(userInput)
' 数値をセルA1に表示
Range("A1").Value = num
Else
MsgBox "有効な数値を入力してください。"
End If
End Sub
この例では、インプットボックスを表示してユーザーに数値の入力を促します。入力された値が数値であれば、セルA1にその値を表示し、数値でない場合はエラーメッセージを表示します。
毎日のルーチン作業をExcel VBAで自動化し、時間を有効活用しませんか?Excel VBAエキスパート資格取得問題集を活用して資格取得、そして効率的な仕事を実現しましょう!
VBAエキスパート資格は、日常業務でExcelを多用し、手動作業を減らしたいと考えている方には価値あるものです。
ExcelVBAエキスパートベーシック
仕事の効率をあげるためにExcelVBAを利用する人が対象の問題集です。
ExcelVBAエキスパートスタンダード
ExcelVBAの開発を仕事にする人が対象の問題集です。
Excel VBA エキスパート資格について知りたい方は、下記「Excel VBAスキルアップを目指すなら知っておきたいVBAエキスパート」をご確認ください。
ExcelVBAの学習方法で効果的な学び方を知りたい方は、下記「Excel VBA初心者のための効果的な学習ガイド」をご確認ください。