検索

キーワード


【簡単】初心者のための Excel VBA (マクロ) の開発基礎

  • 公開日:2020-02-21 18:46:11
  • 最終更新日:2020-12-27 01:12:37
【簡単】初心者のための Excel VBA (マクロ) の開発基礎

皆さんはじめまして、エンジニアのIMMRです。

今回は、きっと多くの方が一度は触れる事があるであろうExcelの便利な機能、

「VBA」の使い方を解説していきたいと思います。

Excelは日常的に使っているけど、もっと使いこなしたい!と感じる方、必見です!


1.VBAとは?

最近、よく耳にするようになった「マクロ」という言葉。

マクロとは、Excel等の操作を自動化させる機能のこと

そのマクロで使用されているプログラミング言語が、VBA(Visual Basic for Application)になります。

このマクロがとても便利!✨

今まで手作業で行っていた様々な業務を、自動化させることができます。

例えば…

 〇他のブックやテキストを読み込んだり、

 〇セルを操作したり、

 〇ピボットを作成したり、

 〇グラフを作成したり、

 〇印刷を行ったり、

といった作業のプログラムを一度作成すれば、次回からはボタン等を使って、処理を実行するだけでOKなんです…!✨

処理の時間は内容やデータ数等で違いますが、早い場合は数秒で済んでしまいます。

時間がかかるものもありますが、そういった場合はコーヒーを飲みながら処理が終わるのを待っていたり…

マクロ実行中にコーヒーブレイク

処理を実行して、そのままランチに行ったり…

そうして帰ってくると、処理が終わっています。

手作業でやっていないからミスもなくなりますね!

本当におすすめです♪


上記に挙げた作業例は一握りで、他にもまだまだたくさんのことができますよ!

そして、ExcelさえPCに入っていれば、それだけでOK!

その他のインストールは不要です。

だから、すぐに開発に挑戦できるのでとても使いやすいですね。

簡単なので、ぜひ皆さんも一緒にトライしてみましょう♥


2.簡単!まずは環境を整えよう

先ほどExcelがあればすぐにできます!と言いましたが、初めだけ、少しExcel内で環境の設定を行う必要があります。

それは、「開発」タブの表示と「マクロのセキュリティー」の設定です!

また、画面はExcelのバージョンによって多少異なりますので、そこはご勘弁下さい

(※ここではExcel2013/2010の環境です)。


「開発」タブの表示

①「ファイル」→「オプション」→「リボンのユーザ設定」をクリック

マクロの環境設定:「ファイル」タブのクリック

マクロの環境設定:「オプション」のクリック

マクロの環境設定:「リボンのユーザー設定」のクリック


②右側にある「リボンのユーザ設定」のメインタブの中にある「開発」にチェックを入れてOKをクリック

マクロの環境設定:右側にある「リボンのユーザ設定」のメインタブの中にある「開発」にチェックを入れてOKをクリック


するとExcelの画面上部に「開発」が表示され、作成しやすくなります。

マクロの環境設定:右側にある「リボンのユーザ設定」のメインタブの中にある「開発」にチェックを入れてOKをクリック


「マクロのセキュリテイー」の設定

①先ほど追加した「開発」のタブをクリック

マクロのセキュリティ設定:「開発」タブのクリック


②コードのグループにある「マクロのセキュリティ」をクリック

マクロのセキュリティ設定:「マクロのセキュリティ」をクリック


③マクロの設定の箇所で「警告を表示してすべてのマクロを無効にする」を選択し、OKボタンをクリック

マクロのセキュリティ設定:「マクロの設定」をクリック

マクロのセキュリティ設定:「警告を表示してすべてのマクロを無効にする」を選択し、OKボタンをクリック


この設定をすることで、自動でマクロが動作することを防げます!(マクロで悪さする人もいますので…)


3.プロシージャーを作ろう

さあ、どんどんいくよ~!✨

プロシージャーとは、Sub XXXX()End Subで作られた、プログラムの1つの塊です。

そして、複数のプロシージャーが一つになったものがモジュール、つまりマクロです!

では、さっそくプロシージャーを作ってみましょう!

今回は、標準モジュールを作成します。


まず、Excelを立ち上げたら、

VBEの立ち上げ方の説明


①ALTキー+[F11]を同時に押し、VBEを立ち上げる

 ※VBE(Visual Basic Edtor)はマクロを作成・修正するエディターのこと。VBAと似ていますが、別物です!

VBEの画面


左側にある「プロジェクト-VBAProject」のMicrosoft Excel Objectsを右クリック

 そして、挿入⇒標準モジュールを選択するとモジュール(文字が入力できる白い画面)ができます。

VBEで「挿入」⇒「標準」モジュールを選択


モジュールの作り方


③その白い画面の中に Sub モジュール名 を入力する

 モジュール名は基本どんなものでもOK!でも、使えない名前もあるので注意です!

 (※使えない名前…頭が数字やアンダーバー、IfやAnd等の予約語)

 今回は、モジュール名を「VBA_test」にしてみましょう!

モジュール名の入力

 

④Enterを押す

 すると自動でEnd Subが作成されます。

Enterキーを押して、自動で「End Sub」を作成

このSub モジュール名~End Subの間に、プログラムを記載していく流れになります。


今回は、メッセージボックスを表示するプログラムを作成したいと思います!✨

メッセージボックスを表示するプログラムは下記のように記載します。

Msgbox ()

()の中に表示したい文字を記載することになります。

ここで注意すべきことは、()の中は、文字と数字で書き方のルールが少し変わってくるということ。

 ・数字ならそのまま → Msgbox(12345)

 ・文字ならダブルコーテーションで囲む → MsgBox("Hello")


今回は、文字"Hello"で実施してみましょう!

メッセージボックスを表示するプロシージャの作成

これで、メッセージボックスを表示するプロシージャーが完成です。

では、次のステップで早速実行してみましょう!


4.プロシージャーを実行しよう

プロシージャーの実行方法は、3つあります。

 ・Excelの画面からスタート

 ・VBEの画面からスタート

 ・ボタンからスタート

ボタンからのスタートはユーザ用のもので、ボタンを押したらすぐに動かすことができます。

上記2つでも実行はできますが、これは開発者用です。

複数のプロシージャーがある場合、Excel画面からのスタートからだと、

実行したいプロシージャーを選択する必要があります。

また、VBEの画面からのスタートでは、プログラムから直接実行することになります。

実際にプログラムを表示して操作することになりますが、

もし、実行時に誤ってプログラムをいじってしまうと…ひぇー!なんてことになってしまいますので、

これだけは避ける必要があります。

VBEからの実行はプロシージャーの塊だけでなく、1行ずつ実行することが可能なことからも開発者用と言えますね。


さて、余談はこれくらいにして、早速上記2つの方法で実行していきます。


Excel画面からスタート

①開発タブのマクロをクリック

プロシージャーの実行:「開発」タブの「マクロ」をクリック


②実行したいプロシージャーを選択して、実行をクリック

プロシージャーの実行:実行したいプロシージャーを選択して、実行をクリック 


作成したプロシージャーが実行されます。 

メッセージボックスが表示されました~!✨

プロシージャーの実行結果


VBEの画面からスタート

①VBEを立ち上げる( ALTキー + [F11]を同時押し)

プロシージャの実行:VBEを立ち上げる

②実行したいプロシージャーSub ~End のプログラム内にカーソルをおく

プロシージャの実行:実行したいプロシージャーSub ~End のプログラム内にカーソルをおく

③[F5]を押す

 実行されました!✨

プロシージャの実行結果


皆さんも無事、できましたでしょうか?

今回はメッセージボックスの表示するプログラムをご紹介しましたが、

これに条件式、繰り返し文、変数などを追加することによってさらに色々な作業ができるようになり、よりプログラムらしくなっていきます。

これからもどんどんコラムを書いていく予定です!お楽しみに♥


VBAの資格も!

最後に、VBAに関するプチ情報!

VBAには資格があります。

Microsoft のExcel・AccessのVBAのスキル認定試験「VBAエキスパート」というもので、

株式会社オデッセイ コミュニケーションズ(敬称略)が運用している試験です。

種類は4種類!

 ・Excel VBA ベーシック

 ・Excel VBA スタンダード

 ・Access VBA ベーシック

 ・Access VBA スタンダード

他の多くの国家資格のように、年に何回・試験日はいつ、というのが決まっていません。

テストセンターでのCBT試験(Computer Based Testingの略。

問題用紙やマークシートなどの紙を使わず、コンピュータで受験する方式のテストのこと)なので、

各試験場所にもよりますが、頻繁に試験が行われています。

そのため、納得のいくところまでみっちり勉強して、準備万端の状態で試験に応募し、受験することが可能です!

そして結果は試験終了後、数秒するとすぐに合否が画面に表示されるので、

合格発表までドキドキしながら待つ期間がないのもCBT試験ならではの良いところですね。


皆さんも、ぜひステップアップとして受験してみてはいかがでしょうか?

詳しくは、専用サイトを見てくださいね!

では、また次回のコラムでお会いしましょう。




【著者】

Imamura

今まではExcel VBAの開発をしてきました。
開発を主にしたものや他の業務の効率化を目指して行ったものさまざまです。
現在は、他のプログラミング言語に挑戦して、スキルアップを目指しています。

よく読まれている記事