ユーザーにマウスで単一セルを選択させたい
ユーザーライクな開発を心掛けたいです。
InputBoxでユーザーにマウスで範囲を指定させたい場合があります。
複数セルを選択させる場合はこちらの記事でよかったのですが、単一のセルの場合は少し工夫が必要です。
ユーザーにマウスで単一セルを選択させるサンプルコード
'■ユーザーにマウスで単一セルを選択させる
Public Sub sample()
Dim rng As Range
On Error Resume Next
Do
'■InputBoxをType=8にしてマウスでセル範囲を取得
Set rng = Application.InputBox("マウスで単一セルを指定してください", Type:=8)
'■rngにデータが存在すればアドレスを返す
If rng Is Nothing Then MsgBox "キャンセルが押されました"
Loop Until rng.Count = 1
'■単一セルが選択されたら、アドレスをMsgboxで表示する。
MsgBox rng.Address
On Error GoTo 0
End Sub
注意点
- On Error Resume Nextの理由は、キャンセルボタン押下時にエラーが発生するためです。
—–
実行時エラー424 オブジェクトが必要です
—– - どうしても複数セルを選択可能なため、指定したセルが1ならLoopを抜ける形での実装です。
関連記事
- 複数セルの選択をさせたい場合はこちら。



コメント