「A1セルを選択してから保存するExcelアドイン | 初心者備忘録」
という、はてなブックマークに気づきました。
非表示になっているシートがない、といった前提があるのなら、VBE(Visual Basic Editor)のイミディエイトウィンドウから、全シートのA1セルを選択することも可能ですので、ご紹介しておきます。
イミディエイトウィンドウから全ワークシートのA1セルを選択する
以下のような操作で、イミディエイトウィンドウから、全シートのA1セルを選択することができます。
イミディエイトウィンドウに、
sheets.select: cells(1).select: sheets(1).select
というコードを入力して[Enter]キーを押す
非表示になっているシートがなければ、以下のようなマクロで、
Sub samp()
Sheets.Select ' 全シートの選択
Cells(1).Select ' A1セルの選択
Sheets(1).Select ' 先頭シートの選択
End Sub
全シートのA1セルを選択できます。
このプロシージャに登場する各行を、イミディエイトウィンドウから1行で実行するために「:」(コロン)を間に入れてつなげたのが、
sheets.select: cells(1).select: sheets(1).select
というコードです。
手作業で、全シートのA1セルを選択する場合、全シートを選択しておいてから、A1セルを選択して、全シー-トの選択を解除する、という操作を行います。これをイミディエイトウィンドウから行うのが、
sheets.select: cells(1).select: sheets(1).select
というコードです。
Excel VBAに慣れた方でも、「cells(1)」というオブジェクト式に違和感を覚える方がいらっしゃるかもしれません。Rangeオブジェクトのデフォルトプロパティは引数を省略することができて、第2引数を省略した「Cells(1)」というオブジェクト式でA1セルを表すRangeオブジェクトを取得できます。
イミディエイトウィンドウから全ワークシートの表示倍率を100%にする
全シートのA1セルを選択するのと同じく、全シートの表示倍率を100%にしたいという要望もあります。
この処理をイミディエイトウィンドウから行うのなら以下のとおりです。イミディエイトウィンドウに、
sheets.select: activewindow.zoom=100: sheets(1).select
というコードを入力して[Enter]キーを押す
手作業で、全シートの表示倍率を100%にする場合、全シートを選択しておいてから、表示倍率を100%にして、全シートの選択を解除する、という操作を行います。これをイミディエイトウィンドウから行うのが、
sheets.select: activewindow.zoom=100: sheets(1).select
というコードです。
- Newer:Word VBAのRange(0, 0)とは
- Older:VBAでアクティブセルの位置を取得する
Home » エクセルマクロ・Excel VBAの使い方 » Windowオブジェクト » 全シートのA1セルを選択する・表示倍率を100%にする-イミディエイトウィンドウから