目的
- 単一セルを選択状態にしたい。
- 二通り試してみる。
- Range
- Cells
- エラーの発生例を見る。
その一例
- 白紙のワークシートでテストしてみます。

Sub B3選択()
Range("B3").Select
End Sub
- Range で操作対象取得。
- Select で選択実行。

- 下記マクロでも同じ結果になりました。
Sub Cells使用_B3選択()
Cells(3, 2).Select
End Sub- Cells で操作対象取得。
- (3,2) は 3 行目の 2 列目という意味です。
エラー発生例 1
操作対象のシートがアクティブになっていない場合、エラーが発生するようです。
- 「Sheet2」がアクティブになっている状態でテストしてみます。

Sub エラー発生_B3選択()
Worksheets("Sheet1").Range("B3").Select
End Sub

Activate でアクティブシートを切り替えておくと、エラーが発生しないようです。
- 下記マクロを実行してみます。
Sub エラー解消_B3選択()
Worksheets("Sheet1").Activate
Worksheets("Sheet1").Range("B3").Select
End Sub - 「Sheet1」がアクティブになって「B3」が選択されました。


エラー発生例 2
シートが選択されていても、アクティブになっていないとエラーが発生するようです。
- 「Sheet1」が選択されている状態でテストしてみます。

Sub エラー発生_selectされていてもactiveになっていない()
Debug.Print "active="; ActiveSheet.Name
Worksheets(Array("Sheet2", "Sheet1", "Sheet3")).Select
Debug.Print "active="; ActiveSheet.Name
Worksheets("Sheet1").Range("B3").Select 'エラー
End Sub
- Array でまとめて選択。


イミディエイトウィンドウへの出力結果。

Sheet1~3 が選択されています。

テスト環境
- Windows 10
- Microsoft Office Excel 2003
以上、閲覧ありがとうございました。
