Home » エクセルマクロ・Excel VBAの使い方 » Applicationオブジェクト » マクロ実行中にセルを選択してもらう-Application.InputBox

マクロ実行中にセルを選択してもらう-Application.InputBox

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「excel vba マクロの途中でセルを選択」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

Excelマクロの実行中に、セルを選択してもらうには、どうすればいいのかを探している方による検索キーワードです。

結論からいうと、ApplicationオブジェクトのInputBoxメソッドを使えば、

マクロ実行中にセルを選択してもらう

マクロを実行している途中で、ユーザーにセルを選択してもらえます。

[スポンサードリンク]

マクロの実行中にセルを選択してもらうサンプルマクロ

具体的な簡単なプロシージャをご紹介しておきます。


Sub マクロの実行中にセルを選択してもらう()
 Dim rng As Range
 
 On Error Resume Next
 Set rng = Application.InputBox( _
   Prompt:="セルを選択してください。", _
   Type:=8)
 On Error GoTo 0
 If rng Is Nothing Then Exit Sub

 MsgBox rng.Address(False, False)
End Sub

上記のSubプロシージャを実行すると、途中で「セルを選択してください。」というインプットボックスが表示され、セルを選択して[OK]ボタンを押すと、選択されたセルのアドレスがメッセージボックスに表示されます。

サンプルマクロの解説

ApplicationオブジェクトのInputBoxメソッドの引数・Typeに「8」を指定することで、インプットボックスでセルを選択できるようになります。

正常な動作だけを考えると、
 Sub samp()
  Dim rng As Range

  Set rng = Application.InputBox( _
    Prompt:="セルを選択してください。", _
    Type:=8)
  MsgBox rng.Address(False, False)
 End Sub
といったプロシージャでもいいのですが、インプットボックスで[キャンセル]ボタンが押されたときに、
「実行時エラー'424' オブジェクトが必要です。」
という実行時エラーが発生しています。

これを回避するために、On Error文を入れています。

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » Applicationオブジェクト » マクロ実行中にセルを選択してもらう-Application.InputBox

TrackBack:0

TrackBack URL
[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » Applicationオブジェクト » マクロ実行中にセルを選択してもらう-Application.InputBox

「Applicationオブジェクト」の記事一覧

検索

Copyright © インストラクターのネタ帳 All Rights Reserved.

.