MENU

【Excel VBA】全てのワークシートでA1セルを選択した状態で閉じるマクロの紹介

f:id:excelkaizen:20180909170110j:plain

 

企業で働いている人の中には、上司からエクセルで資料作成を頼まれる際に、『必ずA1セルを選択した状態で保存しておいてと言われたことがある人も多いのではないでしょうか。

 

確かにそのほうがシートを見やすいので上司の気持ちもわかりますが、シートが大量にある場合などにいちいちその作業をするのはかなり面倒だなあと思います。

そこで、そのような煩わしい作業から解放されるべく、

全てのワークシートでA1セルを選択した状態で閉じるマクロ

を作成しました!

 

以下がVBAコードになります。

 

Sub sample()

Dim ws As Worksheet

 For Each ws In ActiveWorkbook.Worksheets

  ws.Activate

  ActiveSheet.Range("a1").Select

 Next ws

 Worksheets(1).Activate

ActiveWorkbook.Close SaveChanges:=True

End Sub

 

非常に短いコードですね。

 

簡単にマクロの説明をすると、

For each...nextステートメントでブックの全てのシートを選択し、A1セルを選択します。その後、Closeメソッドの引数「SaveChanges」にTrueを指定することにより、上書き保存してブックを閉じます。

 

上記コードををそのまま標準モジュールに貼り付ければ、あとはマクロを実行するだけなので、是非試してみてください。