ブックやシートの選択を含めてセル選択をする

Application.Goto メソッドを使うと、セルの選択と同時にブックやシートも自動で切り替わり、複数の場所への移動処理をまとめて実行できます。

'「Book1」の「Sheet1」の A2 セルを選択する
Application.Goto Workbooks("Book1").Worksheets("Sheet1").Range("A2")

ブックやシートの選択をセルの選択と同時に行うには、Application.Goto メソッドを使用します。
このメソッドでは、セルを指定すると 同時にブックやシートもアクティブ化されます

Range オブジェクトの Select メソッドでもセル選択は可能です。
しかし、アクティブではないブックやシートのセルを指定するとエラーが発生します

メソッドの書式

引数(太字は必須引数)
Goto Reference, Scroll

Referenceには移動先のセルを指定します。
ブックやシートも合わせて指定することで、その範囲までを同時にアクティブにできます。
また、この引数を省略した場合は、メソッド実行時点でのセル範囲が自動的に指定されます。
この動作については、以下の記事で詳しく解説しています。

Scroll は、移動先のセルの表示に関する設定です。
この引数に True を指定すると、セル範囲の左上を表示範囲の左上に合わせます
省略した場合は False が指定されるため、移動先が画面内にある場合は画面がスクロールしません。

コード解説

Application.Goto Workbooks("Book1").Worksheets("Sheet1").Range("A2")

このコードは、別のブックにある特定シートのセルを選択するためのものです。
例では、Book1 の Sheet1 にある A2 セルをアクティブにしています。

ブック間のセル選択の移動
別のブックのシートのセルへ移動する

画像の動きを確認してください。
特にシートタブの部分に注目してみてください。

シートタブの見出しが変わっているのが分かると思います。
ここから、アクティブブックが別のブックへ切り替わったことが確認できます。
その後、A2 セルが選択状態になっていることが分かります。

Application.Goto Worksheets("Sheet1").Range("A2")

このように、ブックを指定せずにシートを指定すれば、アクティブブック内でシート間の移動が可能です。
さらに、シートの指定も行わず Range のみを指定した場合は、アクティブシートのセルを選択します。

Application.Goto Range("B3"), True

2つ目の引数である Scroll に True を設定したコードです。
シートの指定をしていないため、アクティブシート上のセルが選択されます。

指定セルを左上に合わせて表示する

画像の動きを確認してください。
A1 セルから B3 セルへ選択が移動しています。

ウィンドウ上ではセルがスクロールしていないため、パッと見では分かりにくいのですが、B3 セルが画面左上に表示されています。

表を作成した後、その表を画面内にきれいに収めて表示したい場合などに便利です。
ただし、通常の処理ではウィンドウ上の動きが分かりにくいため、使用する機会はあまり多くないかもしれません。