catch-img

VBAとは?マクロとの違い・使い方を解説

目次[非表示]

  1. 1.VBAとは
  2. 2.マクロとは
  3. 3.VBAとマクロの違い
  4. 4.VBAを使用してできること・できないこと
    1. 4.1.VBAを使用してできること
    2. 4.2.VBAではできないこと
  5. 5.VBAの使い方
    1. 5.1.VBEを起動する
    2. 5.2.標準モジュールを挿入する
    3. 5.3.コードを入力する
    4. 5.4.プログラムを実行する
  6. 6.Excelマクロを使用してできること・できないこと
    1. 6.1.Excelマクロを使用してできること
    2. 6.2.Excelマクロではできないこと
  7. 7.Excelマクロ(マクロの記録)の使い方
    1. 7.1.開発タブを表示できるようにする
    2. 7.2.マクロの記録で手順を記録する
    3. 7.3.マクロを保存する
    4. 7.4.マクロを実行する
  8. 8.Excel VBAスキルアップならリンクアカデミーの企業研修
  9. 9.リンクアカデミーの研修導入事例
  10. 10.VBAに関するよくある質問
  11. 11.まとめ


 現在のビジネスシーンにおいては、ExcelやPowerPointといったツールを使えるということは必要不可欠と言っていいでしょう。しかし、ExcelやPowerPointの機能を「使いこなせている」と自信を持って答えられる人はどの程度いるでしょうか。特に、マクロやVBAといった機能や言語まで使いこなせているという人は案外少ないのではないでしょうか。本記事では、業務効率を向上するVBAやマクロについて、それぞれの違いや使い方をご紹介します。


VBAとは

 VBAとは、「Visual Basic for Applications」を略した言葉であり、ExcelやAccessなどの、Microsoft Officeに含まれるアプリケーションソフトの拡張機能、プログラミング言語です。ユーザーは簡易的なプログラムを記述することで、VBAを利用して複雑な処理を自動化することができます。

 また、VBAと似ている言葉として、VBがあります。VBは、「Visual Basic」を略した言葉であり、こちらもMicrosoftが開発したプログラミング言語です。VBはWindows環境下での開発に活用されており、VBをもとにして作られたものがVBAです。

 VBは開発環境を構築する必要があり、Visual Studioという開発ツールをインストールする必要があります。一方で、VBAはMicrosoft Officeのアプリケーション内で使用できるプログラミング言語であるため、Excelなどがインストールされていれば使用することができます。

  エクセル(Excel)で業務効率化する方法8選 基礎から応用まで解説 Excelは様々な場面や場所で幅広い人に使われているツールです。顧客とのやり取りや社内での事務手続きなどの色々な業務でそれぞれフォーマットを作り、従業員が活用していることが多いですが、Excelの機能を知らないことで非効率的な作業やフォーマット自体の使いにくさに繋がっているケースも多く見受けられます。 本記事ではExcel業務で現在見受けられている課題や、業務効率化のためのいくつかの方法をご紹介します。 法人研修・IT研修ならリンクアカデミー
  【初心者向け】Excel(エクセル)の勉強法|効率よく習得するには? Excelはビジネスシーンの中でも多くの場面で、幅広い人たちに利用されているソフトウェアです。Excelの勉強をしてスキルアップをすることで、自身の業務を効率化することや職場での活躍の機会を増やすことなどにも繋がります。しかし、Excelをあまり使ったことがない、またはこれから勉強したい人にとっては、どこから始めればいいのかが分からないことがあるかもしれません。本記事ではExcelをご自身で勉強しようと考えている方・自社の社員へ向けて独学を促したいと考えている方へ向けて、学習のステップやおすすめの研修プログラムなどをご紹介します。 法人研修・IT研修ならリンクアカデミー
  ITリテラシーとは?低いことのリスク・高め方を徹底解説 現在では多くの人がスマートフォンを持ち、ビジネスシーンにおいてもパソコンで業務をしたり社内サーバーでファイルを共有したりと、ITは日々の生活に根付いています。そのため、ITに対する理解や活用する力である「ITリテラシー」が低いと、従業員の生産性低下や全社を巻き込むトラブルになりかねません。 本記事では、ITリテラシーとはそもそも何を意味しているのか、その有無によるメリット・デメリットなどをご紹介します。 法人研修・IT研修ならリンクアカデミー


マクロとは

 マクロとは、Microsoft Officeのアプリケーションソフトの中で、あらかじめ手順を設定しておくことで、必要な時に自動的に操作を実行することができる機能のことを指します。マクロの中でも、Excelのマクロ機能を指して「マクロ」と言うことが多いため、「マクロ」と言えばExcelマクロのことであると認識されている方が多いでしょう。

 Excelには関数やグラフ描画、テーブル作成機能などがありますが、マクロもそれと同様の機能であると言うことができます。また、マクロはプログラミングを組むことで操作を指定して実行することができますが、「マクロの記録」といった機能を用いてマクロを構築・実行することもできます。

 マクロの記録とは、画面上で実際に行った操作をExcel内で記録しておき、必要な時に自動的に実行させることができる機能です。例えば、毎日行う作業においては、マクロを利用することでその作業工数を省くことが出来ます。マクロの記録を活用することで、プログラミング言語を覚えることなくExcelのマクロ機能を利用することができます。


VBAとマクロの違い

 しばしばVBAとマクロは同じものであるといった認識をされていますが、厳密には両者は異なるものです。VBAがプログラミング言語であるのに対して、マクロは機能のことを指しています。Excelのマクロ機能を使用するために必要となるプログラミング言語が、VBAであるといった関係になっています。また、マクロを作成するためには、Microsoft Officeのアプリケーションごとに異なるプログラミング言語を使用する必要があります。

 そして、「マクロの記録」の機能があれば複雑なVBAの構築は必要ないといったことが考えられますが、マクロの記録自体もVBAによってプログラミングが構築されています。VBAによるプログラミングがベースにあることで、ユーザーが自身で記述することなくマクロ機能を使うことができています。

 加えて、マクロの記録で自動化できる操作には限界があります。複雑な処理や細かい操作を行うためには、マクロの記録ではなくVBAを用いてプログラミングを構築する必要があります。

  ExcelVBAスキルアップ研修 | 法人研修・IT研修ならリンクアカデミー VBAのコードが「編集できる」を目指します。 法人研修・IT研修ならリンクアカデミー


VBAを使用してできること・できないこと

 では、VBAではどのようなことができて、どのようなことができないのでしょうか。VBAでできることとできないことを把握することで、VBAを活用しやすくすることができます。ここでは、VBAを使用してできること・できないことをご紹介します。

VBAを使用してできること

 Microsoft Officeのアプリケーション内で使用するプログラミング言語であるVBAですが、VBAを使用することで業務を自動化したり、簡単なものにしたりすることができます。VBAを使用してできることの例として、以下のようなものが挙げられます。

■データ集計を自動化する
 VBAを使用することで、データ集計を自動化することができます。例えば、売上管理をExcelで行っている場合には、月ごとの売上や顧客別の売上、商品別の売上といった様々なデータを項目ごとに並び替えて集計することができます。

■メールを一括で送信する
 VBAを使用することで、メールを一括で送信することもできます。あらかじめフォーマットが決まっている文章がある場合には、それを人の手で1回1回送信するのではなく、VBAでプログラムを構築することでメールの作成から送信までを一括で行うことができます。

■アプリケーション同士を連携させる
 アプリケーション同士を連携させることも、VBAを使用することで可能となります。ExcelやPowerPointといったMicrosoft Officeのアプリケーション同士を連携させることで、管理しているデータや情報を自動的に授受することができます。

VBAではできないこと

 様々な操作を自動的に実行することができるVBAですが、VBAでもできないことがあります。VBAでできないこととして、以下のようなものが挙げられます。

■膨大なデータ処理を必要とする作業
 VBAでもできないこととして、膨大なデータ処理を必要とする作業が挙げられます。VBAを使用することで、自動的にデータを集計したり、帳票にデータを記入したりといったことができますが、その処理速度や処理能力には限界があります。そのため、数千〜数万といった量のデータを処理しようとすると、VBAでは対応しきれずに処理速度が大幅に低下してしまい、場合によってはフリーズしてしまうことがあります。

■Microsoft Officeのアプリケーション以外との連携
 VBAでできないこととして、Microsoft Officeのアプリケーション以外との連携もあります。VBAはあくまでMicrosoft Officeのアプリケーション内で使用することができるプログラミング言語です。そのため、VBAで記述されたプログラミングを処理することができないアプリケーションと連携することはできません。

■アプリケーション開発
 アプリケーション開発も、VBAではできないこととして挙げられます。VBAはExcelやPowerPointなどの機能を拡張するためのものであるため、新しいアプリケーションを開発するプログラミング言語ではありません。


VBAの使い方

 では、実際にVBAを使うにはどのような手順が必要なのでしょうか。VBAを使用する際に主に必要となるステップについてご紹介します。

VBEを起動する

 VBAでプログラミングを記述するためには、VBE(Visual Basic Editor)を起動する必要があります。VBEを起動するためには、メインタブで「開発」タブをクリックします。その後、「Visual Basic」をクリックすることで、VBEが別ウィンドウで起動します。

標準モジュールを挿入する

「標準モジュール」とは、VBAのコードを記述するための場所のようなものです。VBAでコードを記述するためには、この標準モジュールを挿入してそこに記述する必要があります。VBEの左側に表示されているシートを右クリックすることでメニューが開くので、その中の「挿入」から「標準モジュール」を選択します。

コードを入力する

 標準モジュールを挿入できたら、その中にコードを入力します。コードを入力する際には、VBAのコード記述のルールに従って記述する必要があるため、記述のルールについて確認しておくようにしましょう。

プログラムを実行する

 コードを入力した後には、実際にプログラムを実行します。ツールバーの中にある「実行」タブにカーソルを合わせることで、「SUB/ユーザーフォームの実行」や「マクロの実行」といった選択肢が出てきます。それを押すと、入力したコードに従ってマクロが実行されます。


Excelマクロを使用してできること・できないこと

 では、マクロではどのようなことができて、どのようなことができないのでしょうか。マクロでできることとできないことを把握して、マクロを活用しやすくすることができます。ここでは、マクロを使用してできること・できないことをご紹介します。

Excelマクロを使用してできること

 Excelマクロでは、VBAほどの複雑さや細かさの操作は実行できないものの、様々なことを自動的に実行することができます。特に、マクロの記録ではプログラミングを必要とせずに特定の作業をExcel内で記録しておき、必要な時に実行することができるため、大変便利です。Excelマクロを使用してできることとして、以下のようなものが挙げられます。

■位置を記録する
 Excelマクロを使用することで、セルの位置を記録することができます。マクロの記録を開始した時には、その時に選択されているセルを記録しています。デフォルトでは「C3からE5に移動」といった絶対参照の方法で記録が行われますが、「上に2行、右に1列移動」といった相対参照の方法でも記録することができます。

■特定の位置で動作する処理を記録する
 Excelマクロを使用することで、特定の位置で動作する処理を記録することができます。上記の絶対参照では、特定のセルで動作する処理を記録することができるため、「C3をコピーして、E5にペーストする」といった動作を自動的に実行することができます。

■定型的な作業を記録する
 相対参照での動作を記録することで、特定のセルだけではない動作を自動化することができます。これを使用することで、一定の範囲のデータをもとにして、別シートに抽出するといった動作を実行することができます。

Excelマクロではできないこと

 プログラミングを行う必要がなく、動作や処理を自動化することができるExcelマクロですが、Excelマクロで実行できることには限界があります。Excelマクロではできないこととしては、以下のようなものが挙げられます。

■ループする動作の記録
 Excelマクロでできないこととして、ループする動作の記録が挙げられます。ここで、ループする動作とは、ある一定の条件が満たされるまで同じ動作を繰り返すことを指しています。マクロの記録では、ループする動作を記録することができないため、ループ処理を行いたい場合にはVBAでプログラミングを行う必要があります。

■条件の分岐が発生する処理
 条件の分岐が発生する処理についても、Excelマクロでは処理することができません。マクロの記録では、画面上の操作をそのままExcel内で記録することになるため、何らかの条件分岐により自分で判断する必要がある動作は記録することができません。この場合も、VBAによるプログラム構築が必要となります。

■VBAではできないこと全般
 VBAでできないことは、Excelマクロでも実行することができません。マクロの記録は、VBAをベースとして、プログラミングを用いることなく動作の記録や実行を行う機能です。そのため、VBAで不可能なこと全般はExcelマクロでも記録や実行を行うことができません。


Excelマクロ(マクロの記録)の使い方

 では、実際にマクロを使うにはどのような手順が必要なのでしょうか。マクロを使用する際に主に必要となるステップについてご紹介します。

開発タブを表示できるようにする

 マクロの記録を使用するためには、まずは「開発」タブが表示されている必要があります。実は平常の設定では、開発タブは表示されているわけではありません。開発タブでは、マクロの記録やVBAを選択することができます。まずは、「ファイル」から「オプション」を選択します。そして「リボンのユーザー設定」から右側の「開発」にチェックを入れてOKを選択します。

マクロの記録で手順を記録する

 「開発」タブから「マクロの記録」をクリックします。マクロ名や保存先を入力するウィンドウが立ち上がるため、名前をつけて保存先を選択し、OKを選択します。そうするとマクロの記録がスタートするため、記録したい操作を画面上で実行します。操作が終わったら、「記録終了」をクリックします。

マクロを保存する

 マクロを記録した後には、作成したファイルを保存します。「名前を付けて保存」を選択して、保存先を選択します。この際、「Excelマクロ有効ブック」として保存することで、マクロを有効にして保存することができます。

マクロを実行する

 実際にマクロを実行する際には、「開発」タブの「マクロ」をクリックします。作成したマクロが並んだウィンドウが立ち上がるため、実行したマクロを選択して、実行をクリックします。

 毎日行うような決まった業務において、マクロで作業の記録をすることで、その後の業務では記録したプログラムを実行するだけで完了してしまうため、大幅な時間短縮につながります。


Excel VBAスキルアップならリンクアカデミーの企業研修

 VBAとは、マクロを実行させるためのプログラミング言語であり、マクロは、作業を自動化させる機能です。日々のデータ管理や資料の印刷、または会議で使用するグラフの作成まで、マクロを使用することで、定型作業を時間をかけずに行うことが出来ます。

 昨今の働き方において、時間をかけることよりも時間内にどれだけの価値を生み出すことが出来るのかといった生産性が注目されるようになってきています。生産性の高さが市場から選ばれる人材の用件にもなってきている今日において、VBAを筆頭とした新しいスキルの取得、能力向上は効果的な動きなのではないでしょうか。

 リンクアカデミーは「あなたのキャリアに、本気のパートナーを」をミッションに掲げて個人が「学び」を通じ、できる喜びを感じ、自らのキャリアを磨き上げられる場を目指しています。

そのために
・㈱アビバが提供してきたパソコンスキルの講座提供
・大栄教育システム㈱が提供してきた資格取得を支援する講座
・ディーンモルガン㈱が提供してきた「ロゼッタストーン・ラーニングセンター」のマンツーマン英会話レッスン
といったキャリアアップに関するサービスをフルラインナップで展開してきました。

この実績と経験を活かして、
・内定者・新入社員の育成
・生産性向上
・営業力強化
・DX推進
といった幅広い課題に対してもソリューションを提供しています。

  ExcelVBAスキルアップ研修 | 法人研修・IT研修ならリンクアカデミー VBAのコードが「編集できる」を目指します。 法人研修・IT研修ならリンクアカデミー


リンクアカデミーの研修導入事例

・ネットワンシステムズ株式会社様

  ネットワンシステムズ株式会社様 | 法人研修・IT研修ならリンクアカデミー スキルの習熟と研修の効果を「見える化」するサーベイ 法人研修・IT研修ならリンクアカデミー


・東京建物株式会社様

  東京建物株式会社様 | 法人研修・IT研修ならリンクアカデミー 当社にあった研修プログラムのおかげでパソコンが苦手な社員のスキルが底上げできました! 法人研修・IT研修ならリンクアカデミー


・株式会社フロムエージャパン様

  株式会社フロム・エージャパン様 | 法人研修・IT研修ならリンクアカデミー コロナ禍での新卒社員のパソコンスキルの低下を向上させた理由とは 法人研修・IT研修ならリンクアカデミー


・株式会社トーコン様

  株式会社トーコン様 | 法人研修・IT研修ならリンクアカデミー スタッフ職のスキルを可視化し、成長の機会を提供 研修とともに描く従業員の新たなキャリア 法人研修・IT研修ならリンクアカデミー


VBAに関するよくある質問

Q1:VBAとは

A1:VBAとは、「Visual Basic for Applications」を略した言葉であり、ExcelやPowerPointなどの、Microsoft Officeに含まれるアプリケーションソフトの拡張機能、プログラミング言語です。ユーザーは簡易的なプログラムを記述することで、VBAを利用して複雑な処理を自動化することができます。

 また、VBAと似ている言葉として、VBがあります。VBは、「Visual Basic」を略した言葉であり、こちらもMicrosoftが開発したプログラミング言語です。VBはWindows環境下での開発に活用されており、VBをもとにして作られたものがVBAです。

Q2:VBAでなにができるか

A2:VBAでできることとして、以下のようなものが挙げられます。

■データ集計を自動化する
 VBAを使用することで、データ集計を自動化することができます。例えば、売上管理をExcelで行っている場合には、月ごとの売上や顧客別の売上、商品別の売上といった様々なデータを項目ごとに並び替えて集計することができます。

■メールを一括で送信する
 VBAを使用することで、メールを一括で送信することもできます。あらかじめフォーマットが決まっている文章がある場合には、それを人の手で1回1回送信するのではなく、VBAでプログラムを構築することでメールの作成から送信までを一括で行うことができます。

■アプリケーション同士を連携させる
 アプリケーション同士を連携させることも、VBAを使用することで可能となります。ExcelやPowerPointといったMicrosoft Officeのアプリケーション同士を連携させることで、管理しているデータや情報を自動的に授受することができます。

Q3:VBAとマクロの違いは

A3:VBAがプログラミング言語であるのに対して、マクロは機能のことを指しています。Excelのマクロ機能を使用するために必要となるプログラミング言語が、VBAであるといった関係になっています。また、マクロを作成するためには、Microsoft Officeのアプリケーションごとに異なるプログラミング言語を使用する必要があります。


まとめ

 Microsoft Officeのアプリケーション内で操作を自動化したり、簡単にしたりといった処理を行うことができる機能やプログラミング言語として、マクロとVBAがあります。マクロやVBAを使用することで、データの処理や集計、アプリケーション同士の連携などを自動で行うことができるようになります。複雑すぎるデータの処理や、膨大な量のデータを伴う動作などは行うことはできませんが、マクロやVBAを活用することで業務を大幅に効率化することができます。

稲冨 健太
稲冨 健太
佐賀県出身。名古屋大学理学研究科にて物理を専攻。「伝統工芸」や「ものづくり」を応援したいという想いで、組織コンサルティング会社に就職し理念浸透・人事制度設計・人材育成・マネジメントなどに従事。独立後、中小・ベンチャー企業へのコンサルティングや商品開発の経験を基に精力的にライティング活動を実施。

関連研修

関連記事

新着記事

資料請求・お問い合わせ

お電話でのお問い合わせ

月~金 10:00~19:00  10:00~17:00

研修サービス概要資料

1,000社以上の法人研修実績を誇るリンクアカデミーの
提供する各種研修・診断についてご紹介。

お問い合わせ

気になる点やご不明点はお気軽にお問合せください。
スキル診断の無料体験も可能です。
特長

リンクアカデミーの診断・研修について詳しく知る

おすすめ記事

タグから探す

おすすめのお役立ち資料

お役立ち資料フォーム_ダミー画像
ITスキル研修 サービス概要資料
お役立ち資料_サムネ画像2
ITスキル育成サービス 比較資料
DX推進を加速させる業務効率化研修 Excel編
DX推進を加速させる
業務効率化研修 Excel編