インプットボックスの使い方

ステートメントを使うと、インプットボックスを使って複数の条件分岐ができます。

InputBoxを使って、指定したセルに値を入力するマクロを作ります。

目次

インプットボックスの使い方

  ■ コード内を「Wクリック」で選択できます。
[code] Sub サンプル0030() ‘変数の宣言 Dim GetStr As String Dim Msg As String Dim Title As String Msg = “A1からA5までのセル番地を入力してください。”   ’インプットボックスのタイトル名 Title = “セル番地の選択” GetStr = InputBox(Msg, Title) GetStr = UCase(GetStr) Select Case GetStr Case “A1” Range(“A1”) = 1000 Case “A2” Range(“A2”) = “Hello” Case “A3” Range(“A3”) = “2004/08/01” Case “A4” Range(“A4”) = 3.1415 Case “A5” Range(“A5”) = 25000 Case “” Case Else MsgBox “入力が間違っています”, vbCritical End Select End Sub [/code]

1.デスクトップに作成した「確認用マクロのコピー」を開いて、「Visual Basic」をクリックします。

2.「Visual Basic」の画面で「Module1」を開きます。

3.サンプル0030のコードをコピーして、「Module1のコードウィンドウ」に貼り付けます。

4.マクロを実行します。

5.マクロを実行すると、「インプットボックス」が開きます。

インプットボックスのマクロの使い方

InputBoxにセル番地を入力します。

インプットボックスに「A1」を入力すると、セルA1に「1000」が入力される。(小文字a1と入力しても、「UCase関数」で大文字に変換される)

インプットボックスに「A2」を入力すると、セルA2に「Hello」が入力される。

インプットボックスに「A3」を入力すると、セルA3に「2004/8/1」が入力される。

インプットボックスに「A4」を入力すると、セルA4に「3.1415」が入力される。

インプットボックスに「A5」を入力すると、セルA5に「25000」が入力される。

インプットボックスに「A6」などの設定されていない値を入力すると、「入力が間違っています」というメッセージボックスが表示されます。

コードの説明

■ Dimついて

Dim GetStr As String
Dim Msg As String
Dim Title As String
’ Dim~As~Stringは、変数を宣言するものです。
「GetStr」という変数を、Stringで文字列型の変数として宣言しています。
「Msg」と「Title」も同様です。

1.変数「Msg」に「A1からA5までのセル番地を入力してください。」という文字列を代入します。
変数「Title」に「セル番地の選択」という文字列を代入します。
Msg = “A1からA5までのセル番地を入力してください。”
Title = “セル番地の選択”

2.次のコードは、「InputBox」関数の戻り値を変数「GetStr」が受け取り格納します。
GetStr = InputBox(Msg, Title)

3.「UCase」は、小文字を大文字に変換してくれます。
入力に「a1」としても、「A1」のように変換されます。
GetStr = UCase(GetStr)

4.「Select Case GetStr」の「GetStr」に格納された戻り値と、「 Case “A1″」の値を比較します。
その値に対する表示をしていきます。

Select Case GetStr
Case “A1”
Range(“A1”) = 1000
Case “A2”
Range(“A2”) = “Hello”
Case “A3”
Range(“A3”) = “2004/08/01”
Case “A4”
Range(“A4”) = 3.1415
Case “A5”
Range(“A5”) = 25000
Case “”
Case Else
MsgBox “入力が間違っています”, vbCritical
End Select
請求書を作るマクロについては次の記事が参考になります。
■関連記事■ 請求書を作るマクロ

以上で「インプットボックスの使い方」の説明を終わります。

目次