VBAエキスパートの中の「Excel VBA スタンダード」という試験を受験してきました。
Excel VBAとは、Microsoft社のOffice製品であるExcelで動作するVBA(Visual Basic for Applications)というプログラミング言語のことを指します。
主観がだいぶ入っており、受験した方によって受け止め方が異なってくるかと思いますが、わたしが受験して感じたことなどを説明していきます。
VBAエキスパートとは?
Excel、Accessのマクロ・VBA(Visual Basic for Applications)のスキルを証明する資格で、資格を取得するための試験は、現在(2023年3月時点)は以下の4種類があります。
- Excel VBA ベーシック
- Excel VBA スタンダード
- Access VBA ベーシック
- Access VBA スタンダード
※VBA Professional Office 2003の試験は2014年3月末をもって終了しています。
今回わたしは、2つあるExcel VBA試験の難しい方にあたる「Excel VBA スタンダード」試験を受験しました。
なお、記事に記載されている試験概要等の内容は、VBAエキスパートとは(株式会社 オデッセイ コミュニケーションズ公式)より引用しています。
Excel VBA スタンダード:試験概要
Excel VBA スタンダード資格を取得するための試験の概要は以下になります。
項目 | 内容 |
問題数 | 40問前後 |
出題形式 | 選択肢形式、ドロップダウンリスト形式、クリック形式、ドラッグ&ドロップ形式、穴埋め記述形式 |
試験方法 | コンピューター上で実施するCBT形式 ※CBT形式とは決められて試験会場に出向き、パソコンを使用して問題と解答を行っていく試験形式のことです。 |
試験時間 | 50分 |
合格基準 | 650~800点(1000点満点) |
受験料(一般) | 14,850円(税込) |
受験料(割引受験制度適用) | 13,420円(税込) |
=公式HP(試験概要)より引用=
試験会場は、公式HP(試験会場を探す)より検索して、自分で試験会場を選択することができます。試験日時は、選択した試験会場ごとに空いている日時を選択して、いつでも受験することができます。
試験会場によって、受験できる曜日が決まっている場合があるため、詳細は試験会場を検索して受験可能日時を確認してください。最短で2日後程度から受験できそうです。
なお、出題形式としては選択肢形式、ドロップダウンリスト形式、クリック形式、ドラッグ&ドロップ形式、穴埋め記述形式の5形式の記載がありますが、わたしが受験した際はクリック形式、ドラッグ&ドロップ形式の出題はなかったので、試験する日程等によって出題形式が異なるようです。
Excel VBA スタンダード:出題範囲
出題範囲のテーマは10個あり、以下のようになっています。
- プロシージャ
- 変数の活用
- ステートメント
- ファイルの操作
- ワークシート関数の利用
- 検索とオートフィルター
- データの並び替え
- テーブルの操作
- エラー対策
- デバッグ
運営会社の公式HPに掲載されているサンプル問題を見てみると、VBAの言語を用いてマクロツールやシステムを開発する際に必要なVBA言語の基本レベルの知識だと思います。
しかし、普段あまり使用しない機能の単語などを回答する問題も多かったため、新しく記憶する内容が多くあると思います。
プログラミングの基本的な考えを身に付けていたとしても、VBAについて事前に十分に学習した上で試験に臨まないと合格できないと思いますので、ご注意ください。
受験して分かったこと(悪い点1つ、良い点2つ)
実際にわたしは「Excel VBA スタンダード」試験を受験して、無事合格しました。
合格点は700点(※試験の難易度で前後します)で、わたしの点数は825点でした。
そこそこの点数でしたが、受験してみて分かったことは以下になります。
「Excel VBA スタンダード」試験でも出題は限られた範囲である(悪い点)
悪い点と表現すると少し誤解がありますが、上記で記載した項目やサンプル問題、実際に試験に出た問題を見てみると、VBAというプログラミング言語の基礎知識を問われる問題が多かったという印象です。
感覚的な話ですが、VBAを実務で扱うことを考えると、「Excel VBA スタンダード」試験で学習する範囲は、100(≒実務で十分に使いこなすレベル)あるうちの20(≒基礎部分をだいたいカバー)くらいのイメージです。
(※高度な使い方等を含めて全部で100としています。)
VBAでプログラミングをしていくにあたって、この試験の範囲を覚えていれば十分という出題範囲、レベル感ではないと感じました。
※そういう意味で悪い点と表現しましたが、試験内容は覚える必要がある知識ばかりで良い問題ばかりです。
英語で例えるなら、「Excel VBA スタンダード」の試験は、中学2年生までの英単語や英文法について問われるイメージです。
英語の試験で良い点数をとるために単語等をたくさん覚えたとしても、それらを組み合わせて英語で文章を上手くかけるようにはならない。英語で流調に会話はできないと思います。
プログラミングでは論理的思考力、アルゴリズムを組み立てる力や発想力が大事なので、VBAでのコーディング方法(プログラムの書き方等のルール)などの知識を得たところで、言語を使用して高度なマクロツール等を作ることはなかなか難しいです。
――じゃあVBAエキスパートを取得しても意味がないのか?
と思うかもしれませんが、そうでもないです。
以下より良い点を説明していきます。
VBA言語の基本的な考えや書き方を知ることができる(良い点)
今までなんとなくで書けていたVBAのプログラムでしたが、言語の特徴や基礎を覚えることで、より効率的に、より確実にコーディングすることができるようなります。
また、実際にVBAソースコードの冗長的な書き方をなくす方法や、不具合が起こらないような記載方法を学習する過程で知ることができるので、より美しいコーディングができるようになると思います。
VBAでのコーディング方法を検索する時間が短くなる(良い点)
実際にツールやシステム等を開発する際は、コーディングする上で分からないところはインターネットで検索することが多いです。
VBAに限らず、プログラミング言語について完璧に覚えることは、言語の開発者でも難しいと思いますが(忘れてしまいますし。)、分からないところはググればなんとでもなります。
Office TANAKAのサイトであったり有益な情報が載っているサイトはたくさんあるので、それらのサイトを確認して、試行錯誤しながら進めることが多いと思います。
その際にExcel VBA エキスパート等の資格を取得するために、VBAの特性等について学習していれば、VBAでプログラミングする上の基礎知識は身に付いていると思いますので、インターネットで調べる時間が大きく減ると思います。
まとめ
プログラミング言語の試験はだいたいが言語の記載ルール等の作法を聞かれるものだと思います。そのため、それらを使いこなして開発できる力が同時に身に付けることができるかは疑問です。
資格よりも実務経験を重要視されるのはそのようなところからだと思います。
そのため「Exce VBA スタンダード」を合格したということは、VBAについて詳しいことの証明にはなるのですが、VBAを使ってツールやシステム等を満足に作れるほど力がある証明にはなりにくいと思います。
やはりシステム開発等をするうえで一番重要なスキルはアルゴリズムを考える力だからです。
しかし、VBAというプログラミング言語のルール等の作法を知ることで今後VBAを使って開発する際のスピードと正確性が確実にアップすると思います。
最後ですが、「Excel VBA スタンダード」の資格は、VBAのツールを多く作っているわたしでも勉強しないと合格には程遠かったと思います。
わたしはVBAではない他の言語からプログラミングを学習したため、様々なプログラミング言語で共通する考えは心得ていましたが、プログラミング言語としてVBAをしっかり学んだことはありませんでした。
なんとなくで調べながらVBAでツール等を開発することはできていましたが、正しく効率的なコーディングができているかは自信がありませんでした。
今回、その状態からプログラミング言語であるVBAを基本から学んでみました。
この資格取得の勉強をしたおかげで、自分の持っている断片的な知識が繋がり、考えがまとまったため、VBAでのコーディングに関して自信が付きました。
「Excel VBA スタンダード」資格を取得するために学習することは、Excelを用いて業務効率化しようとする全てのユーザーにとって得することはあっても、損することはありません。
プログラミング言語のことを全然知らない方も、プログラミングはできるけどVBAがあまり分からない方にもオススメできる試験ですので、是非学習してみてください。
とりあえずこれを覚えれば大丈夫!という書籍は以下から購入できますので、ご参照ください。