【Excel VBA】全シートの左上を選択するマクロ

当ページのリンクには広告が含まれている可能性があります。
左上選択マクロ

こんにちは、ユーキです。

今回は、左上を選択するマクロを紹介します。

Excelを保存する際に、全シート左上(A1)セルが選択されていて、先頭シートが表示される状態にしておくと、次開いたときに便利ですよね。今回のマクロではそれが自動で行えるようになります。

目次

左上を選択するマクロ

A1に移動する

Application.GoToメソッドを使います。

選択だけの場合、「ActiveSheet.Range(“A1”).Select」でもよいですが、ウィンドウ枠の固定で分割して表示させている場合にスクロールされないため、一番上のセルが見える状態になっていません。

Call Application.GoTo(ActiveSheet.Range("A1"), True)
'以下のような書き方でもOK
Application.GoTo ActiveSheet.Range("A1"), True

シートを選択する

上記の処理を全シートに対して行います。後ろのシートから選択をして、A1セルに移動するようにします。

Dim i As Integer
For i = ActiveWorkbook.Sheets.Count To 1 Step -1
    ActiveWorkbook.Sheets(i).Select
    Application.GoTo ActiveSheet.Range("A1"), True
Next

処理中の描画を停止する

処理中に画面の描画を停止して、処理の高速化を図ります。

Dim i As Integer
'描画の停止
Application.ScreenUpdating = False
For i = ActiveWorkbook.Sheets.Count To 1 Step -1
    ActiveWorkbook.Sheets(i).Select
    Application.GoTo ActiveSheet.Range("A1"), True
Next
'描画の再開
Application.ScreenUpdating = True

まとめ

今回は、左上を選択するマクロの紹介でした。

左上を選択するマクロ
  • Application.GoToメソッドを使用する
  • For文で全シート処理を実行する
  • 処理中は描画を停止することで高速化を図る

少しでもお役に立てば、幸いです。

スポンサーリンク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

旅好き職業プログラマ。文系大学卒業後、ITソフトウエア開発会社に勤務してプログラミング言語を学ぶ。現在は転職し、プロジェクトマネージャ的ポジションで生産管理システムの開発にあたる。
得意言語は、VB、VB.NET、C#.NET、Java、SQLなど。

目次