どうも、Wです。

私は最近現場で業務を短縮できる便利なマクロを作ることに専念しておりました。

そこで今回は、マクロを作成するときに役立つ機能やショートカットキーをご紹介させていただきます!

 

・作成した理由

今回、作ったものは出退勤時間を記入する記録表に今月分の新規シートを追加するマクロです。マクロなしで行うと、先月分のシートをコピペして貼り、文字の削除とコメントの削除、セル結合の解除、セル結合したときに消えた分の羅線引き、文字色を黒に戻す、シート名の変更、シート内の日付の変更とやることは、7通りです。

デフォルトのシートの作成も考えたのですが、デフォルトを作ってしまうと新規加入者の名前が更新されないためこちらは諦めました。

 

・マクロ記録だけでやってみた。(※これは、私のやり方ですので参考程度までに)

まず、私が一番最初にやることとしてはマクロ記録を使ってやりたいことの一連の動作を記録するというものです。動作方法としては、リボンユーザーの設定から開発にチェックマークを入れ、開発タブを提示してマクロ記録の開始である三角マークを押してから、やりたい一連の動作を行なった後に四角マークでマクロ記録の終了を押すたったこれだけです。

あとは、記録されたコードを確認します。マクロ記録をそのまま使うということは滅多になく、今回だとある範囲の文字の削除やコメントの削除、セル結合の削除などの比較的簡易的なコードだけをピックアップして抽出します。羅線引きは、カーソルの移動なども記録されてしまっていたためコードが長くなってしまったため省きました。また、シート名の変更やシート内の日付の変更もその月によって値が変わるため省きました。このようにマクロ記録はコードの構成を知るためやピックアップできるところを抽出するために私は使います。

 

・F8のショートカットキー

続いては、先月分のシートをコピペして貼り付ける作業とシート名の変更、シート内の日付の変更を組み込む作業にあたります。ここからは、ネット検索を使って行います。

まず、先月分のシートのコピペは、開いているシートからコピペするので『開いているシートと検索すると色々でてきますのであったものを組み込んでいきます。VBAを実行する際にF5のショートカットキーで一気に実行できるのですが、F8のショートカットキーで一行ずつ動作を確認して実行する方法をとっています。F8のショートカットキーで一つずつ動作を確認して行った方が勉強になるからです。慣れてきたら、F5で一気に実行するでも良いと思います。後はシート名を変更する方法と、シート名に連動させてシート内の日付を変更させる方法を調べて終わりです。今回は、AIの“Bing”を使って連動させる方法を調べました。“ChatGPT”と比べると実行したい動作のコメント部分も丁寧に書き換え、文章化してくれていたためおすすめです。

 

・おわりに

今回マクロだけで、作成したものと自分で作成したものを比較してみると三百行以上あったものが、三十行ばかりで作成することができました。マクロ記録で作ったコードは、プログラムの行が多い分起動に時間がかかっておりましたが、自分で作ったものはマクロ記録のものに比べると肌感覚で1/5程度に時間短縮できたと思います。