※本ページにはプロモーション(広告)が含まれています
Microsoft Office製品に組み込まれたプログラミング言語。Excel・Word・Accessなどの操作を本格的に自動化できる。
詳しい解説
VBAは『Visual Basic for Applications』の略で、Microsoft Office製品(Excel・Word・Access・Outlook・PowerPoint)の内部に組み込まれたプログラミング言語です。マクロの記録で生成されるコードもVBAで書かれており、コードを直接編集することで、記録だけでは実現できない高度な自動化が可能になります。
特徴としては、①専用IDEの『Visual Basic Editor(VBE)』が標準搭載されており、Alt+F11で開ける、②変数・条件分岐・ループ・関数・クラスといった一般的なプログラミング構文が使える、③Office製品のオブジェクト(セル・シート・ブック・文書・メール等)を直接操作できる、④他Office間で連携できる(Excelからメール送信、Wordに差し込み等)、といった点が挙げられます。
実務での代表的な用途は、①複数ブックをまたいだデータ集約、②定型レポートの自動生成、③条件に応じたメール自動送信、④Webサイトからのデータ取得、⑤ユーザーフォームによる入力画面の作成、などです。非エンジニア部門でも経理・営業・人事で業務改善ツールとして広く使われています。
注意すべき点は、マクロと同じくセキュリティ制限があることです。インターネットから取得したファイルのVBAは既定でブロックされ、信頼できる場所に配置するかプロパティで許可を出す必要があります。また、VBAはMicrosoftが後継として『Office Scripts(クラウド版Excel向けのTypeScript)』を推進しており、将来的にはクラウドではOffice Scriptsへ移行する流れです。ただしデスクトップ版Excelでは引き続きVBAが中心に使われており、実務需要は依然として高い状況が続いています。
営業部で、毎朝100件の受注メールから金額・顧客名・商品名を抜き出して受注一覧Excelに追記する作業があるとします。VBAを使えば、OutlookのVBAコードで『今朝届いた受注メールを全件読み込み、本文から金額・顧客名・商品名を正規表現で抽出し、Excel受注一覧に自動追記』といった処理を数秒で完了できます。毎朝30分の手作業がゼロになり、入力ミスもなくなります。
別の呼び方
Visual Basic for Applications
Officeマクロ言語
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!