VBA(マクロ)が便利となんとなくわかっていても、実際何ができるのかイメージがわかない人は多いのではないでしょうか。そもそもVBAに敷居が高いイメージがあり、なかなか手を出せない方も多いと思います。
今回はこれまで紹介してきた「コピペで使えるマクロコード」の内容をまとめ、できること一覧として紹介します!
そのまま貼り付けて使えるコードなので、気になるものから試してみてください!
目次
エクセル マクロ とは?
そもそもエクセルマクロとは、エクセルで使えるプログラムの事です。正式名称はVBA(Visual Basic for Applications)といいます。そのため、マクロ・VBAどちらも同じものをさすことが多いです。
なおマクロを使用する時には、簡単な環境設定が必要となります。またコードの貼り付けや実行も、通常のエクセルとは違う画面で行います。こうした環境設定や実行方法については、以下の記事で詳しく解説していますので、ぜひそちらも参考にしてみてください。
エクセル マクロ でできること
エクセルマクロを使うことで、エクセルを自動化することはもちろん、フォルダ作成、メール取得など様々な業務を効率化することができます。
この記事では、
- エクセル処理系
- フォルダ処理系
- メール処理系
- その他機能の追加
という、4つのカテゴリーに分けて紹介します。
すべてコピペで使えるコードを紹介しています。ぜひ興味のあるものから、使ってみてください!
【コピペで使えるコード集】エクセル処理系
ここでは、エクセル内の処理をまとめています。複数シート一括処理や目次自動作成といった、エクセル操作を自動化するためのコードとなります。
またVBAに慣れてきた人向けに、行・列取得の方法やエクセル関数の使用方法なども解説しています。初心者の方は、自動化コードをコピペで試しながら慣れ、行・列の取得のようなコードにチャレンジしてみてください!
リンク付き目次の自動作成
初めに紹介するのは、リンク付きの目次を生成するVBAコードです。
シート名で管理をしていても、シートが多くなると探すのが大変になりがちです。そんな時に便利なコードになっています。
複数シートに同じ処理を実行
すべてのシートに一括処理を行いたい時に便利な、ループ処理のコードです。
このコードを基準に書いていくと、スムーズにループ処理が書ける内容となっています。
最終行・列の自動取得
最終行・列の取得を簡単にするコードを紹介しています。
処理対象の範囲を指定するうえで欠かせないコードですので、脱初心者に向けて確認してほしい内容です。
関数の自動化(VLOOKUP・COUNTIF)
エクセル関数を、VBAで再現・自動化する方法を紹介しています。
VBAでエクセル関数を使うことで、コードを単純化できエクセル操作の自動化にもつながります。
教本ではあまり紹介されていない内容ですので、こちらも活用してみてください。
【コピペで使えるコード集】フォルダ処理系
このカテゴリでは、外部のフォルダやファイルの処理を紹介します。CSVの統合やファイル名の取得・変更など、地味に面倒な作業を自動化するコードです。
CSVファイルの一括統合
フォルダにあるCSVファイルを、1つのエクセルにまとめるVBAです。
CSVを一つのエクセルにシートごとにまとめるので、検索をするときに便利なマクロになっています。
ファイル名の一覧取得
フォルダにあるファイルを一覧表示するマクロです。次に紹介するファイル名の一括変更でも、一部使用しています。
ただこちらのマクロは、ファイル名がリンクになっています。その為、クリックでファイルを開くことも可能です。
目次としても活用できるので、ファイル整理としても便利なマクロとなっています。
ファイル名の一括変更
フォルダ内のファイル名を、まとめて変更するマクロです。
エクセルで入力したファイル名に変換できるので、一括で名称変更をするのに便利なマクロです
フォルダの作成
エクセルの内容でフォルダを作成するVBAを紹介しています。
日付のフォルダを大量に作る場合や、リストと同じ名前のフォルダが必要な時に、便利なVBAです。
【コピペで使えるコード集】メール処理系
Outlookと連携し、メールの自動作成や取得を行うVBAコードです。
エクセルとOutlookは同じマイクロソフトなので、とても相性のいい組み合わせです。とても効率が上がるマクロになっているので、ぜひ活用してみてください。
OutlookメールをExcelに出力
Outlookで受信したメール情報を、エクセルに一覧形式で取り込む方法です。
本文も取得できるので、本文の集計を行う場合に便利なマクロとなっています。またこの記事では、VBAを使わず件名などの情報を取得する方法も紹介しています。そちらもぜひ参考にしてみてください。
メールの自動作成①:Outlookメールの自動作成(添付なし)
エクセルリストをもとに、メールを自動作成するマクロです。ほかのVBAと連携させて、見積書取得システムなどを作ることも可能です。
メールの自動作成②:添付付きメールの自動作成
添付ファイル付きのメールを自動作成するコードです。
フォルダのファイル取得VBAを使えば、メールごとに別の添付をつける作業も効率化することができます。
メールの自動作成③:複数添付メールの自動作成
応用編として、2つ以上の添付をつける方法を紹介しています。
添付を2つ以上つけられるコードも紹介しているので、こちらも参考にしてみてください。
【コピペで使えるコード集】その他機能の追加
エクセルVBAでは、ちょっとした追加機能で、業務効率をアップさせることが可能です。
ここで紹介するコードは、既存のマクロに組み合わせることで実装できるものばかりとなっています。もちろん初心者の方でも導入しやすい内容です。
すべてコピペで使える内容なので、ぜひ実務に取り入れてみてください。
メッセージボックスで「実行前に確認」を徹底!
初めに紹介するのが、実行前に確認メッセージを表示する機能です。この記事では、Yes/Noボタン付きの確認メッセージを簡単に実装できるコードを紹介しています。
作ったコードに足すだけで、誤動作防止となってとても便利です。これまで紹介したコピペコードにも使えるので、カスタムして使ってみてください。
作業を快適にする!効率化のための追加VBAコード
私の経験から「これを足すだけで便利になる」と思う追加機能を4つ紹介しています。
初期化などのコードに加えて、ボタンの追加方法も紹介しています。こちらもこれまでのコードにプラスして使ってほしい内容です。
まとめ
本記事で紹介したマクロはどれもコピペで使えるので、まずは興味のあるコードから試してみてもらえると嬉しいです。実際に動かしてみることで、VBAの仕組みや使い方が少しずつ理解できるようになります。
さらにChatGPTを使えば、VBAの作成も簡単に行うことができます。ChatGPTを使ったVBAの作成方法についても紹介していますので、興味のある方はそちらもぜひ見てみてください。
このブログでは今後も、効率化に関する記事を随時更新していきます。ぜひ他の記事も参考にして、効率化を行っていってください!

