4月14日の土曜日にエクセルVBAエキスパートスタンダードの試験を受けてきました。結果としては「合格」していたので、今はホッとしています。
エクセルVBAエキスパートという試験は、エクセルにあるマクロ・VBA(Visual Basic for Applications)のスキルを認定する資格試験制度です。
以前からこのブログではエクセルのVBAの有用性についてたくさん書いてきました。約9ヶ月前にエクセルVBAのスピードと正確性に驚かされ「これは勉強しないといけない」と一念発起し、仕事の合間を縫ってコツコツと勉強をしてきました。
その甲斐あって今回の試験でなんとか合格することが出来ました。そこで今回はプログラマー経験者ではなく、経理の仕事をしてきてITやVBAに対して完全に素人だった自分がここまでしてきたことを簡単にまとめていきたいと思います。
エクセルVBAエキスパート試験と試験の受け方について
VBAエキスパートの概要について『VBAエキスパート公式テキスト Excel VBA ベーシック』には次のように書かれています。
p.009
■VBAエキスパートとは
「VBAエキスパート」とは、Microsoft OfficeアプリケーションのExcelやAccessに搭載されているマクロ・VBA(Visual Basic for Applications)のスキルを認定する資格試験制度です。株式会社オデッセイ コミュニケーションズが試験を開発し、実施しています。
VBAは、ユーザー個人が「マクロ記録」機能を使ってルーティンワークを自動化するような初歩的な使い方から、企業内におけるXML Webサービスのフロントエンドとして、あるいは業務システム開発のためのプログラミング言語として等々、多岐にわたって活用されています。
VBAエキスパート試験というのはオデッセイコミュニケーションズがつくっていて、ベーシックとスタンダードというレベルの試験があります。ちなみにオデッセイコミュニケーションズが出している公式テキストが『VBAエキスパート公式テキスト Excel VBA』であり、試験のレベルに合わせてベーシックとスタンダードがあります。
イメージでいうと、ベーシックが基礎編でスタンダードが応用編といった感じです。もう少し具体的に表すと以下のような所をそれぞれ勉強できます。
■ベーシック
- マクロとVBAの概念(Visual Basic Editorの操作と画面、セキュリティレベル等)
- マクロ記録(標準モジュール、個人用マクロブック等)
- VBAの構文(オブジェクト式、関数(Right、Left、Midなど))
- 変数と定数(変数の代入と取得、スコープ等)
- セルの操作(RangeとCells、セルの書式設定等)
- ステートメント(For…Nextステートメント、Withステートメント等)
- ブックの操作(ブックを開く、ブックを閉じる等)
- シートの操作(シートの挿入、削除)
- デバッグの基礎(イミディエイトウィンドウ、ブレークポイント等)
- マクロの実行(メニュー/ツールバー、クイックアクセスツールバーへの登録等)
■スタンダード
- プロシージャ(引数の意味や宣言、値渡しと参照渡し等)
- イベント(ブック、シートのイベント)
- ステートメント(Select Caseステートメント、For Each…Nextステートメント等)
- 関数(LBound、UBound等)
- エラーへの対応(On Error Goto、On Error Resume Next等)
- APIとOLEオートメーション(OLEオートメーション、APIの概念、使い方等)
- 変数と配列(静的変数、動的配列等等)
- レジストリの操作(レジストリの概念、操作の注意点等)
- ファイルの操作(テキストファイル、フォルダの操作等)
- ユーザーフォームとメニューの操作(コントロール、メニューとツールバーの操作等)
この試験の形態と受験料は『VBAエキスパート公式テキスト Excel VBA ベーシック』において次のように書かれています。
p.012
■試験の形態と受験料
試験会場のコンピュータ上で解答する、CBT(Computer Based Testing)方式で行われます。
●Excel VBA Basic
出題数:40問前後
出題形式:選択式問題
試験時間:50分
合格基準:650~800(1000点満点)以上の正解率 ※問題の難易度により変動
受験料:〈一般〉12,000円(税抜)
〈一般〉10,800円(税抜)※VBAエキスパート割引受験制度を利用した場合
以上はベーシックの試験形態と受験料になります。スタンダードも基本的には同じなのですが、違う所は以下の部分だけです。
出題形式:選択式問題:穴埋め式問題
受験料:〈一般〉13,500円(税抜)
〈一般〉12,200円(税抜)※VBAエキスパート割引受験制度を利用した場合
試験の申込方法なのですが、自分はアビバオンライン検定申込サービスを利用しました。簿記の試験みたいに「1年で3回だけ」という風に、1年で試験が受けられる回数は特に決まっているわけではありません。
この試験を申し込む場合は、その人の住所の最寄にある試験会場を選べますし、日程も定期的に1週間か2週間ぐらいの間隔で試験を受けられるようになっています。詳しい申込方法はVBAエキスパート公式サイト又は検定申込サイトを参照していただけるといいでしょう。
注意点としては、試験日前にちゃんと「受験IDとパスワードをしっかりメモ」していってください。検定を申し込んで検定サービスの方からメールをもらうとわかると思うのですが、そこに「※受験の際には受験者ID/パスワードが必要になります。」と書かれているかと思います。
当日の試験を受ける直前に、この受験者IDとパスワードを入力する時があります。自分はメモは残してきたんですけど、「大文字と小文字」がちゃんと区別されてメモできていなかったのか多少手間取ってしまい、あまり良くない精神状態で試験を受けてしまいました。
合格できたからいいものの試験直前で慌てるのって嫌ですよね。この記事を見てくださった方で試験を受けようと思っている方は、大文字小文字にも注意して受験者IDとパスワードをメモ帳などにしっかりメモして試験に臨んでください。
エクセルVBAエキスパートスタンダードの試験を受けようと思った理由
このブログをいろいろ見てくださっている方はわかると思うのですが、以下のような過去記事を書いています。
要は業務でエクセルのマクロやVBAが使えるようになると全然違うんですよね。スピードと正確性が圧倒的に。特に自分が感激したのが「正確性」です。
自分はこれまで経理の仕事をしてきました。経理の仕事をしてきた方ならわかると思うのですが、業務に非常に正確性が求められますよね。
特に処理する業務量が多くなればなるほどどうしてもミスする所が出てきてしまいます。自分もこれまでいろいろと工夫は重ねてきてはいたのですが、どうしてもミスを「0」にすることができませんでした。
しかし過去記事にあるように、エクセルのマクロとVBAの使い手に出会ってから状況は一変します。もう本当に全然言葉の通り「ミスしなくなった」んですよね。
もちろん完全にミスがなくなったわけではないのですが、それは人間側のミスであり、マクロやVBAに「ちゃんと正しい手順」さえ組み込めればミスはしなくなりました。
そういう経験から「あっ、これは勉強するべきだな」と感じたのがまずひとつ。
もうひとつは、これまでの時代の流れや昨今の急速な世間の情勢の変化から、もうこれからはこの分野を勉強すべきだろうというのがあります。このブログでは以下のような過去記事も書いています。
- なぜプログラミング言語の習得が叫ばれるようになってきたのか
- 労働集約産業、資本集約産業から知識集約産業へ━今後個人が生きていくうえで必要なもの
- 業務を自動化できる技術を持たないと自動化される時代が来るかもしれない
世の中というのは、農業社会、工業社会、情報社会、そして知識社会へ移行していっていると言われています。知識社会はその人の知識や智恵が求められる社会であり、特に現在はその社会への過渡期と言われています。
他にも知識社会への移行の必要性がわかる状況として、昨今の「人手不足」があります。外食産業のように「人の数」で勝負をしなければならない「労働集約産業」は人手不足によっていつかどこかで、規模的、売上的に頭打ちになるであろうことは予想できます。
他にも、特に大規模な製造業は、莫大な資金や固定資産でもある巨大な工場を保有しています。そのような資本集約産業に属する企業は、今は世界的に外国との競争が厳しく、他国の安い土地や人件費を求めて日本からは工場をどんどん移してしまっています。
総務省の統計などにある、第一次産業、第二次産業、第三次産業の日本の比率のこれまでの推移を見てもそれは明らかです。
「今よりも大規模にロボットやAIを使ってビジネスが効率的にできるようになれば、労働集約産業でも資本集約産業でも規模は拡大できるはずだ」という意見もあるかもしれませんが、そういったやり方はもう知識集約産業に移行していると言えますよね?
以上のようにこれまでの世界の歴史や昨今の情勢を見ても、これからは「個人」が「知識社会」へ移行していく必要があると自分は考えており、その中で具体的に個人が何をすべきかという中のひとつが「プログラミング」であり、その中で自分が重要、勉強しやすいと感じたのが「VBA」であったということです。
この試験を受ける理由としては、自分にとって以上のような考えがありました。
試験を受けてみての感想
正直言って難しかったと感じました。1000点満点で自分の点数は733点、合格最低点が700点だったのでギリギリでした。全部で40問あるので1問がだいたい25点、あと2つ間違えていたら落ちていました。
試験が終わってすぐに点数が表示されるのですが、その点数を見たときは思わずヒヤッとしました。「最後にちゃんと何度も見直していて良かったな」と改めて思います。
この記事の最初でも書いたように、この試験はベーシックとスタンダードがあります。受験料を見ると結構高いことがわかります。ですので、ベーシックの試験は回避してスタンダードの試験を目指して勉強してきました。
といってもベーシックの試験勉強を全くしてこなかったわけではなく、ベーシック、スタンダードの公式テキストの両方を勉強をしてから試験に臨みました。
公式テキストには「試験範囲を完全に網羅」という一文があるように、自分が受けた範囲ではテキストに載っていないような全く見たことがないステートメントや関数は出てこなかったと思います。
ただ、「構文」が全然見たことがないような問題が出題されたなと感じます。まぁ応用っていうことでテキストをしっかり勉強していればわかりますよっていうことなんでしょうけど、こういった部分は難しかったと感じました。
試験の進め方は、公式テキストに付属されてくる「模擬問題」と基本的には同じです。例えば時間が表示される部分とかわからない問題はチェックできる部分があって、最後に見直しがしやすいようになっている、といった所です。
学習用ダウンロードサービスである模擬問題を何度もこなして完璧に出来るようにするのと並行して、試験のやり方に慣れておくといいでしょう。
試験当日までの勉強期間とやってきたこと
冒頭部分でエクセルVBAのすごさを目の当たりにしたのが約9ヶ月前と書きました。そこから1ヶ月ほど経ってから本格的に始めたので、試験当日までの自分の勉強期間は約8ヶ月間になります。
他のサイトでは3ヶ月でも簡単に合格できると書いている所もあるようですが、それはたぶんプログラマーやSEなど本職の人たちが勉強すれば、ということでしょう。
実際に経験してみて思ったのは、これは自分の感覚になってしまうのですが、やはり「自分のようなプログラミング未経験者が3ヶ月でスタンダードに合格するのは厳しい」と思います。特に仕事をしながらではなおさらです。
自分がスタンダードの試験までに勉強してきた本はざっくりと以下のものになります。
- 『ストーリーで学ぶ Excel VBAと業務改善のポイントがわかる本』
- 『VBAエキスパート公式テキスト Excel VBA ベーシック』
- 『VBAエキスパート公式テキスト Excel VBA スタンダード』
- 『ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本』
- 『続ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本』
『ストーリーで学ぶ Excel VBAと業務改善のポイントがわかる本』では、自分のような初心者がVBAとはどういったものか、VBAをどのように業務で使っていったら良いのかについて、イメージしやすい内容になっていると感じました。
関数とかステートメントが全く出てこないわけではないのですが、VBAにはおおまかにどのような勉強すべき内容があるのか、図解や事例、イラストなどを交えて笑いあり涙ありの物語形式となっていて非常に読みやすいです。VBAの知識がほとんどない初心者がまずイメージをつかみたいと思ったら、この本を手にとっていただければいいのではないでしょうか。
自分が次に読んだのが『VBAエキスパート公式テキスト Excel VBA ベーシック』です。VBAを基礎的な部分から網羅的に教科書的に勉強したいと考えていたのでこの本が最適であろうと思って購入した本です。
やはりベーシックという言葉が本の名前にあるように、ひとつひとつのステートメントや関数、オブジェクトやプロパティにはどういったものがあるのか、どういった使い方をするのかという内容が中心です。
これに対して公式テキストのスタンダードはもう少し応用的な、ステートメントや関数をある程度まとめてマクロをつくるとどのような結果が返ってくるのか、といった内容が中心です。
で、ベーシックとスタンダードの内容を使ってより実務的に勉強できるのが『ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本』と『続ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本』です。
この2冊は公式テキストの内容に沿っている感じなので、公式テキストを勉強した後にこの2冊を勉強すると、公式テキストの内容をより理解できます。ちなみに『ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本』のレベル的に近いのが公式テキストのベーシック、『続ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本』のレベル的に近いのが公式テキストのスタンダードといった感じです。
ちなみに『続ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本』がどういった本なのかといった書評については以下の過去記事でも触れています。
他にもいろいろとVBAとかプログラミングに関する本は読んできたのですが、スタンダードの試験を目指して中心的に読んできたのが以上の5冊です。
公式模擬問題「Excel VBA スタンダード」はVBA初心者であれば購入することをお勧めします
スタンダードの試験に合格するうえで、以上の5冊に加えてもうひとつ加えたいのが「VBAエキスパート 公式模擬問題『Excel VBA スタンダード』」です。この公式模擬問題は以下の公式サイトからダウンロードできます。
ここまでに公式テキストには付属の模擬問題があるということを書いてきました。その模擬問題はベーシック、スタンダードとも2つずつついてきます。それとは別に、1,728円でダウンロードできる公式模擬問題があるということです。購入すると3つの模擬問題を勉強できます。
これだけ見ると「公式テキストに付属されてくる2つの模擬問題だけでいいじゃないか、なんでこれに加えてわざわざ1,728円も支払って模擬問題をさらに買わなければいけないのか」という意見もあるかもしれません。
自分が試験前にまさにそのように考えていました。でも今となっては、その時の自分の判断は正しかったなと思っています。
というのは、ここまでにベーシックの試験は受験料の高さが気になって受けずにスタンダードの試験だけ受けたということを書いてきました。で、スタンダードの受験料って1回で15,000円近くするんです。
もし受験して落ちたらもう一度15,000円近くを支払わなければいけません。自分はこの時思いました。「目先の1,728円を節約するためにさらに15,000円を失う可能性が高いっていうのはきついよな・・・」と。
そういった考えから別売りの公式模擬問題も購入したわけですが、やはり購入して良かったです。公式テキストに付属されている2つの模擬問題だけでは気づけなかった部分ってやはりありました。
やっぱりより多くの問題にあたった方がより多くの視点で問題を見られるようになるので、新たに公式模擬問題を購入するのはVBA初心者にとっては有効だと思います。
あともうひとつポイントとしては「手で書いて練習した方がいい」ということです。ここまでに書いた試験の形態と受験料の部分を見てもらえばわかると思うのですが、出題形式にスタンダードは「選択式問題:穴埋め式問題」があります。
この穴埋め式問題がちょっとやっかいかなと思います。というのも「ちゃんと知っていないと入力できない」からです。例えば選択式問題ではいくつかの答えの中から正解を選ぶのですが、既に答えがあるので最初にわからなくても答えの文章を読めば正解に気づける可能性があります。
でも穴埋め式問題の場合、ちゃんと関数やステートメントの単語を知っていないと入力できません。この問題のために活きてくるのが、事前に「手で書いて練習しておく」という方法です。
模擬問題の中にも穴埋め式の問題があるのですが、この部分の答えは基本的に2、3回は手で書いて練習するようにしていました。これに加えて、問題文の中でわからない部分や選択肢の中でもわからない関数などがあったら全て手書きで模擬問題を印刷したコピー用紙にメモするようにしていました。
このやり方が実際の試験でも役立った気がします。もちろん間違えた所もあったでしょうが、穴埋め式でも全く入力できないという事態は回避できました。ということで、以上のような自分の経験がVBAエキスパート試験を受ける人にとって少しでも参考になれば幸いです。
次はアクセスVBAのベーシックとスタンダード
VBAエキスパート試験にはエクセル以外で「Access」でもエクセルVBAと同様の試験があります。以下の過去記事でも書いたのですが、Accessにも業務を自動化できる「VBA」があるのです。
これもAccessでいかにVBAが使えるか、理解しているかという試験になります。次はこのAccessVBAのベーシック、もしくはスタンダードの試験を受けようと思っています。
これは理由が3つあります。ひとつ目は、エクセルVBAのスタンダードに合格したんだからそれとセットでAccessVBAにも合格したいからです。
エクセルVBAに合格するにはやはり公式テキストを購入しないといけないと思うのですが、自分がとある書店に行ってエクセルVBAベーシックの公式テキストを買おうとしたときのことです。すぐ隣にAccessVBAのベーシックのテキストがあったんですよね。
その時「あぁAccessにもVBAってあるんだぁ」と少し驚いたのを覚えています。業務上でも知らないよりかは絶対に知っていた方がいいでしょうし、いろいろと役立つであろうという理由もあります。
2つ目は、派遣の求人でエクセルVBA以外にも意外とAccessVBAの知識が求められる仕事が多いことに気づいたからです。以前にも何度か書いたと思うのですが、プログラマーなどの派遣の求人の時給って非常に高いです。例えば時給2,000円とか3,000円、4,000円といった求人も普通に見かけます。
別に派遣に限ったわけではないのですが、パート、派遣、正社員などの求人の仕事内容や求める知識を見てもらえればわかると思うのですが、求められる知識に意外と「AccessVBA」って多いんです。
将来的には経理の仕事から徐々に離脱してプログラマー的な仕事をしていきたいと考えているので、今後はAccessVBAの勉強をしていった方がいいだろうと思うようになっていったわけです。
3つ目は「時代の流れ」から、こういった知識は必要ではないかということです。このブログでは以下のような過去記事を書いています。
人工知能の進化は電子空間上の膨大なデータの蓄積によって促されていると思われる
過去記事では人工知能は時間と伴に進化しており、その進化を促している原因のひとつが、電子空間上に今でも急速に蓄積し続けている「データ」にあるということを書きました。
このデータを有効に利用するためには「データベース」の知識が必要不可欠であり、そういった知識を得るための最初の段階として「Access」や「AccessVBA」について学ぶのは有効ではないかと思いました。
以上のような理由からAccessVBAを勉強をしようと思いました。とはいっていも実際どうなるかはわかりませんが。というのも以前エクセルVBAの勉強を放り出した経験がありました。なぜならその時は、勉強する意味や目的が今ほど理解できていなかったからです。
しかし、今はここまで書いてきたようにAccessVBAを勉強する意味や目的を自分なりに理解している、はずなので、まぁなんとか継続できるんじゃないでしょうか。
コメント