ダイアログボックスでのユーザー入力の取得(Microsoft Excel)
マクロの制御下にあるユーザーから入力を取得する必要がある場合、使用できる1つの方法は、InputBox関数を使用することです。この関数はダイアログボックスを表示し、ユーザーが応答を入力できるようにします。結果は文字列であり、マクロに返され、処理して使用できます。
InputBox関数の構文は次のとおりです。
sResponse = InputBox(sPrompt, sTitle, sDefault)
InputBoxで使用できるパラメーターは3つあり(それぞれ文字列)、最初のパラメーターのみが絶対に必要です。この構文では、sPromptはユーザープロンプトとして表示するテキスト、sTitleはダイアログボックスのタイトルバーに表示するテキスト、sDefaultはダイアログボックスでユーザーに提供されるデフォルトのテキスト文字列です。ユーザーは、必要に応じて、デフォルトの文字列を編集または受け入れることができます。
例として、次のコード行を使用してダイアログボックスを表示し、ユーザーに名前を尋ねることができます。
Dim sUserName as String Dim sPrompt as String Dim sTitle as String Dim sDefault as String sPrompt = "Please check your name and make any corrections" sTitle = "Name Entry" sDefault = "John Doe" sUserName = InputBox(sPrompt, sTitle, sDefault)
このコードが完了すると、sUserName変数にはユーザーが入力したものがすべて含まれます。次に、マクロで、適切と思われる他の方法でその入力を使用できます。
InputBox関数は、それを使用して1つの「質問」しか投稿できないため、一度に1つのデータを取得するのに最適です。マクロで使用するために大量のユーザー入力を取得する必要がある場合は、ユーザーフォームに依存するか、ワークシートから直接入力を取得する必要があります。 (どちらのアプローチも他の_ExcelTips_で説明されています。)
注:
このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。
このヒント(11416)は、Microsoft Excel 2007、2010、2013、および2016に適用されます。
Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります:
linkダイアログボックスでのユーザー入力の取得。