[Excel] 提出前に全シートを整えるVBAマクロ

スポンサーリンク

ワンボタンで、以下の処理を実行して体裁を整えるマクロです。資料提出前にポチッと押します。

  • 100%表示
  • A1セル選択(スクロールも左上にする)
  • 一番左のシートを選択 (非表示シートは無視)
'
' ブック内の全シートを100%表示にして、A1セルを選択する
'
Sub 表示初期化()
    
    Dim ws          As Worksheet
    Dim firstVis    As Worksheet   ' 1 枚目の可視シートを記憶する用
    
    On Error GoTo CleanExit
    
    ' 画面更新を止めてチラつき防止
    Application.ScreenUpdating = False
    
    For Each ws In ActiveWorkbook.Worksheets
        If ws.Visible = xlSheetVisible Then
            If firstVis Is Nothing Then Set firstVis = ws   ' 1 枚目の可視シートを記憶
            ws.Activate                                     ' 一時的にアクティブ化
            ws.Range("A1").Select                           ' A1セルを選択
            ActiveWindow.ScrollRow = 1                      ' 上にスクロール
            ActiveWindow.ScrollColumn = 1                   ' 左にスクロール
            ActiveWindow.Zoom = 100                         ' 表示拡大率を100%に設定
        End If
        ' 非表示シートはスキップ
    Next ws
    
    ' 先頭可視シートを選択
    If Not firstVis Is Nothing Then firstVis.Activate
    
CleanExit:

    ' 画面更新を再開
    Application.ScreenUpdating = True
    
End Sub

この後は、以下の手順でボタンに登録します。

  • マクロをデジタル署名して、Excel アドインファイル (.xlam) として保存
  • 「ホーム > オプション > リボンのユーザー設定」でリボンにマクロ実行用ボタンを追加

詳しくは下記のリンク先が分かりやすいです。

【Excel】作成したマクロをアドインにしてクリック一発で実行可能にする
Excelでよく利用するマクロは、アドイン化して自分専用のリボンに登録しておくと、クリック一発で実行できて便利だ。マクロのアドイン化は少々手間がかかるが、1回だけの作業なので手順通りに行えばよい。その手順を紹介しよう。

コメント

タイトルとURLをコピーしました