ユーザーにマウスで単一セルを選択させたい
ユーザーライクな開発を心掛けたいです。
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を抜ける形での実装です。
関連記事
- 複数セルの選択をさせたい場合はこちら。
コメント