【ExcelマクロVBA】現場で即使える!全シート整形マクロ&個人用登録のやり方

仕事のコツ
おかかくん
おかかくん

この作業、毎日手でやるの?なんとかならないかな…

IT業界30余年、フリーランスのシルバーSE。KAZです。

新しい現場に入ったとき、『とりあえず資料を見ておいて』って言われて開いたExcelの設計書。
開くと表示倍率がバラバラだったり、標準ビューと改ページプレビューが混在していたり、ましてやアクティブセル(現在セル)の位置がバラバラだったり・・・
そんな見づらいExcelの資料を平気で参照させるところって多くないですか

まだ参照するファイル数が少なかったり、1、2枚のシートであれば一つ一つ表示を変えながらでも良いのですが、ファイル数が多かったり、1ファイルの中にシートがいっぱいもあったりすると、それだけでモチベーションが下がります(少なくとも私は『ここでもか・・・』と辟易しますw)

そんな新しい現場に入ってもササっと作れて、超便利なExcelマクロ(VBA)を紹介します。

いまの時代、VBAを作成することはあまりしないかもしれませんが(いわるゆるVBA職人は嫌われる傾向?)、これだけは入った現場でほぼ毎回作成するというものです。

今回は、私が本当に現場で使う「即効で役立つExcelマクロ」と、どの現場でも使えるようにする方法をご紹介します!

この記事でわかること
  • 現場入り初日から使えるExcelマクロ
    VBAコード付きでそのままコピペでOK
  • どのブックでも使えるようにする登録方法

お悩み:Excel設計書の書式がバラバラで見づらい

おかかくん
おかかくん

新しい現場で必ず、「とりあえず資料に目を通しておいて」って言われるけど、
設計書はExcelばかりだし、表示位置や表示倍率も違うし、いちいち設定してなんて見てられないよ・・・

KAZさん
KAZさん

いまだにExcelで設計書や資料を作成することが多いから、
ITの現場ではあるあるだね。

そんな時、シートの見た目を一発で揃えられるマクロを紹介するよ

結論:普段使いのマクロ(VBA)を用意しておこう

この記事の結論

Excelのマクロ(VBA)は一見むずかしそうに見えて、
実は「コピペして使うだけ」でも十分な威力があります。

現場では、「え、これ自動でできるの!?」と驚かれるマクロがたくさんあります。
そして、それをいつでもすぐ使える状態で持っておくこと
が最大の武器になります。

現場でまず使いたい!Excelシートの整形マクロ

これから紹介するマクロは、今開いているExcelファイルにある全てのシートに対して、以下の設定を行います。

  • 画面表示を標準モードにする
  • 表示倍率を100%にする
  • アクティブセルをA1セルにしてスクロールする
Public Sub シート書式を整える()
On Error Resume Next

    '画面の再描画停止
    Application.ScreenUpdating = False
    
    '対象ワークブック
    Dim targetWorkbook As Workbook
    Set targetWorkbook = ActiveWorkbook
    
    'もともと表示していたシートの保持
    Dim beforeSheet As Worksheet
    Set beforeSheet = targetWorkbook.ActiveSheet
    
    'シートの書式を整える
    Dim targetSheet As Worksheet
    
    For Each targetSheet In targetWorkbook.Sheets
        targetSheet.Select
        
        '画面表示を標準モード、100%表示に変更
        With ActiveWindow
            .View = xlNormalView
            .Zoom = 100
        End With
        
        '先頭セルに移動
        Application.Goto Reference:=targetSheet.Range("A1"), Scroll:=True
        
    Next
    
    'もともと表示していたシートに戻る
    beforeSheet.Select
    
Exit_:
    '後処理
    Set targetSheet = Nothing
    Set beforeSheet = Nothing
    Set targetWorkbook = Nothing
    
    '画面の再描画を再開
    Application.ScreenUpdating = True
    
    MsgBox "完了", vbOKOnly

End Sub

このマクロを実行すれば、同じ表示設定がされたExcelシートで参照できるようになりかなり見やすくなりますよ

必要に応じて目盛線を一緒に消すようにしたり、倍率をメッセージボックスで入力するようにしたり、いろいろ応用してみてください。

個人用マクロブック(Personal.xlsb)に登録する方法

作成したマクロは次のステップで個人用マクロブック(Personal.xlsb)に登録しておきましょう。

Step 1:個人用マクロブックを作る(初回のみ)

  1. Excelを開いて「開発」タブ →「マクロの記録」
  2. 「保存先」で【個人用マクロブック】を選ぶ
  3. 適当に操作して記録終了
  4. PERSONAL.XLSB が作成され、今後自動で起動される

Step 2:VBAエディタにコードを追加

  1. Alt + F11でVBAエディタを開く
  2. VBAProject(PERSONAL.XLSB)Modules を開く
  3. Module1 などにコードを貼り付け
  4. 必要に応じてマクロ名をわかりやすく変更

Step 3:保存してExcelを終了

Excelを閉じるとき「個人用マクロブックを保存しますか?」→「はい」


Step 4:実行方法

保存したマクロを実行するときはクイックアクセスツールバーに追加するか、ショートカットキーを登録して、いつでも使えるようにしておくと便利です。

実行方法 その1.クイックアクセスツールバーに登録して実行

Step 1:オプションを開く

  • Excel左上「ファイル」→「オプション」を開く
  • 左メニューで「クイックアクセスツールバー」を選択

Step 2:マクロを選択

  • 「コマンドの選択」で「マクロ」を選ぶ
  • 先ほど登録した PERSONAL.XLSB!マクロ名 を選択
  • [追加] ボタンで右側に移動させる

クイック アクセス ツールバーで設定後

Step 3:アイコン変更(任意)

  • 追加したマクロを選んだ状態で「変更」をクリック
  • 好きなアイコンを選び、分かりやすい名前を入力(例:「書式整え」)

Step 4:OKで保存完了!

  • クイックアクセスツールバーの右上にアイコンが表示されます
  • クリックするだけでマクロが実行されるようになります!
クイック アクセス ツールバーに設定したところ(一番左のボタン)
補足
  • よく使うマクロだけを登録しておくと混乱しにくい
  • アイコンに色がないため、用途別に並べる位置を変えると◎
  • 登録後はExcelを閉じても設定は保持されます

実行方法 その2.ショートカットへ登録して実行

  1. 「開発」→「マクロ」→ 対象マクロを選択
  2. 「オプション」でショートカットキーを設定(例:Ctrl + Shift + F)

注意点:実行前には必ずファイルを保存!!

  • 実行前には元のファイルを保存しておくこと。

Excelマクロを実行した場合、『元に戻す(Undo、ctrl + z)』ことはできませんので、
実行前には必ず元のファイルを保存しておくことおすすめします。

まとめ:地味な作業はササっとマクロを使って効率化!

おかかくん
おかかくん

このマクロ。地味だけど楽!

この記事の結論
  • マクロは現場入りしたら準備する
  • すぐ使えるよう「個人用マクロブック」に登録
  • 評価されやすいのは「地味作業の効率化」
  • 自分の引き出しを作っておけば、どこでも戦える
⚠免責事項について

この記事で紹介したマクロコードや登録方法は、実際の業務や環境で使用する前に、ご自身で十分にテスト・検証を行ってください。

マクロ実行によって発生したいかなる損害・トラブルについても、当方は一切の責任を負いかねます
あくまで自己責任のもとでの、ご活用をお願いいたします。

また現場やプロジェクトのルールでマクロの使用自体を制限している場合もありますのご注意ください。

この投稿が悩んでいる人へのヒントなればうれしいです。
もし、ご意見や扱ってほしいテーマなどがあれば、気軽にコメントしてください!

コメント

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