エクセルマクロ・VBAというものを何となく聞いた事があるけどそれが一体どういうものかよくわからないという方は多いと思います。そんな方からよく聞く質問に、
- そもそもマクロ・VBAとは何か
- マクロとVBAはどう違うのか
- 何ができるのか
- エクセルの関数とは何が違うのか
- どのように始めればよいのか
- どうやって覚えればよいのか
- 独学でも覚えられるのか
というものがあります。ざっくりした結論を言うと、マクロとは、 「エクセルに指示書を渡して仕事をさせる機能」です。VBAは、「エクセルに対して書く指示書の言語(プログラミング言語)」です。
つまり、「仕事を自動化できる」、その結果「生産性が上がり」、「利益が生まれる」、「残業がなくなる」、「あなたの評価が上がる」、「私生活が充実する」ということです。あなたがエクセルでやっている作業であれば何でも自動化できます。数日がかりの仕事がワンクリックで終わります。
もう少し詳しく知りたい、どうやってやるのか知りたいという方は、以下の解説をご覧ください。
そもそもマクロ・VBAとは何か
マクロとは、エクセルに指示書を渡して仕事をさせる機能のことをいい、VBAとは、指示書に使う言語です。この機能を使うと作業を自動化・システム化・業務改善できます。手順書を書く方法は二通りあります。
- 「マクロの記録」という機能を使ってエクセルに作業を覚えさせる
- VBAというプログラミング言語で指示書を書いてエクセルに仕事させる
という方法の2通りです。
マクロの記録
マクロの記録は記憶を開始してから終了するまで、あなたが行った操作をエクセルが自動的にVBAに翻訳します。録音機能のようなものです。
便利な機能なのですが、条件分岐ができなかったり、仕事の範囲が変わったりしたときに柔軟に対応できません。この機能だけではシステム化は難しいです。
VBAで指示書を書く
もう一つの、VBAという言語で指示書を書く場合は、何でもできます。会社の規模にもよりますが、使い方にしだいで、年間数百万のコストダウン効果を与え続けます。
プログラミングというと難しく感じるかもしれません。私も最初はそうでした。しかし外国人に仕事をお願いする時は英語などで話をしないと通じない、という感覚と同じです。慣れてしまえば、なんだこんなものか、となります。
英語なんてできない! という声なき声が聞こえてきそうですが、ご安心ください。私は今でも全く英語の読み書きができません。英語ができなくてもマクロ・ VBAを使いこなすことができます。英語より簡単だと思います。
まとめるとマクロとは、エクセルに仕事をさせる機能を言い、 VBAとは、エクセルと対話するための言葉となります。
マクロ・ VBAを使うと何ができるのか
エクセルであなたがやっている作業は全て自動化することができます。以下のようなエクセル関数だけでは実現できない作業も自動化することができます。
- セルに罫線を引いたり、色を塗る、文字の色を変える
- Windows上の「ファイルを開く」、「ファイル名を変える」、「ファイルを移動する」、「ファイルのコピーや切り取り」、「ファイルを削除」などのファイル操作
- 天気情報や株価情報、価格情報などのインターネット上のデータを取得する
- インターネット上の入力フォームにデータ入力する
- アクセスやSQL Serverといったデータベースとやり取りする
コンピューターがコンピュータにを操作をしますので、人力と比べて圧倒的に高速で(プログラムが間違っていなければ)ミスがありません。日常的にコンピュータを使っている現代人には多くの説明は不要でしょう。
そのため、コストダウンできたり、業務に費やす時間が短縮されたりします。短縮した時間で定時で帰れるようになったり、別の業務をこなしたり、別のスキルを身につけることもできます。つまり、あなたの評価が上がったり、私生活が充実したりします。
エクセルの関数とは何が違うのか
実際にマクロを使ってみないとエクセル関数との違いがよくわからないかもしれません。なぜなら、エクセル関数でも多くのことができるからです。しかし、マクロはエクセル関数だけではできないことが多くあります。
ざっくりいうと、「自動車」と「自動運転」くらいの違いがあります。どこかへいくための「手段」と「その手段を使って自動で目的地まで行くこと」という違いです。
たとえば請求書作るときに、関数を使えば請求書の一部を作る事は出来ますが、請求書発行業務を自動化することはできません。マクロが使えると請求書作成・印刷・メール送信などを自動化できます。
詳しくはエクセル関数とマクロの違いとは? 5つの視点で比較しましたをご覧下さい。
どのように始めればよいのか
エクセルマクロを導入するために特別なソフトは必x要ありません。エクセルがインストールされていれば、どのバージョンであっても、いつでもマクロを使い始めることができます。そのための手順は
- エクセルのオプションを表示させる
- リボンのユーザー設定の中の「開発」にチェックを入れる
- 「マクロの記録」を使って記録を開始するか、 VBE画面を表示させマクロを書く
という手順です。始めるだけなら10秒で始められます。簡単だと思いませんか? 他のプログラミング言語よりもずっと簡単です。詳しくは業務改善の決定版! 超簡単なエクセルマクロ・VBA導入方法とは?で解説しています。
どうやって覚えればよいのか
マクロを習得するための方法は
- 書籍やインターネットで独学で習得する
- 街のパソコンスクールに通う
- 知っている人が身近にいれば教えてもらう
- インターネット上のWebセミナーで学習する
という方法があると思います。それぞれのメリット、デメリットは以下の通りです。
方法 | メリット | デメリット |
1. 書籍やインターネットで独学で習得する | お金がかからない | わからない事を聞く相手がいない(いてもYahoo!知恵袋) |
パソコン教室に通う | わからないことを聞ける | けっこうお金がかかる |
身近な知人に教えてもらう | わからないことを聞ける | なかなか身近にいない |
Webセミナーで学習する | わからないことを聞ける | 対面の臨場感がない |
独学で覚える
学習時間を多く取れる方は独学でもいずれ習得できるかもしれません。しかし、業務で満足に使いこなせるまでに数年がかりという話も聞きます。(というより、その前に多くの方が挫折します)やはり誰かに習った方が習得までの時間は短縮されますし、きちんと体系的に習えば決して難しいものではありません。
パソコン教室かWebセミナーか
誰に習うか、にはいろいろな考え方があると思います。MOS資格取得めざしたものであれば、街のスクールが良いかもしれません(WebセミナーでもMOS対策講座はあります)。
しかし業務に使えるレベルで使いたいというのであれば街のスクールではなく、実際に業務で結果を出している人に習うのが良いと思います。
というのも、街のスクール講師の多くは教える専門家かもしれませんが、実際に業務を効率化したと言う経験がない方が多いのではないか? と思うからです。
私は何回か習ったことがありますが、「MOS資格対策になるのは分かった。で、それどうやって業務で使えばいいの?」という内容ばかりだった記憶しています。
一方で業務で活用している人に習う、あるいはWebセミナーで学習する場合、当たり外れはありますが、あたりを引けば体系的かつ業務に活用できるよう教えてくれるでしょう。
まとめると
- お金をかけたくない、自由に使える時間がたくさんあるという方は「書籍やインターネットで独学」
- MOS試験対策をしたい方は街のスクール、MOS対策がテーマのWebセミナー
- 業務で使いたい方は、業務で使えるレベルを目指すWebセミナー
となります。独学でも習得できるかもしれませんが、時間がかかりすぎます。ビジネスで結果を出すためには「お金で時間を買う」という思考が重要です。なぜなら、時間は最も貴重な資源だからです。お金は貯めたり取り戻したりできますが、その逆はありえません。
「試験のための勉強」よりは、どのように業務を効率化するか、コストダウンするか、利益を上げるかが重要ではないでしょうか。そのためには「業務で使えるレベル」になることを目的としたWebセミナーがおすすめです。
独学でも覚えられるのか
マクロを習いたいという方からしばしば聞く質問に「独学でも覚えられますか?」というものがあります。結論から言うと、独学でも覚えることができます。ただし、業務で使えるレベルになるまでにどの程度の時間がかかるかはその人によります。
すでに何らかのプログラミング言語を習得している方
マクロはVBAというプログラミング言語で書きますから、すでに他のプログラミング言語を書ける方はすぐに習得できます。たとえばゲルマン系言語と言われる言語に、英語とドイツ語があります。どちらか一方を知っていれば、もう一方の言語を習得するのは簡単、と言われます。
同じように、すでに何らかのプログラミング言語を習得していれば、独学でもVBA習得が容易というわけです。
プログラミング未経験の方
プログラミング未経験の方が独学でマクロ習得するのは時間がかかります。自分ひとりで試行錯誤するよりも、得意な人に聞いた方が早いのは当たり前の話です。吉田兼好さんも、「先達はあらまほしきことなり」とおっしゃっています。(何事にも指導者がいた方がいいよね、という意味です)
時間をかけたくないという方であれば、誰かに習う方が良いでしょう。
まとめ
マクロとは、エクセルに仕事をさせる機能です。VBAという言語で指示書を書くことで仕事をさせます。人間が行っていた仕事をコンピューターにやらせる機能ですから、業務効率化やコストダウンにつながります。ひいてはあなたの人生がより良きものになります。
関数だけではできないこともでき、とても便利な機能ですが、プログラミングスキルが必要です。独学でも習得できるかもしれませんが、誰かに習うのが最もオススメです。
コメントを残す