最終更新日:2019-11-03VBAエキスパート対策VBAエキスパート試験に合格するために必要なVBA知識についての対策です。試験に合格するには、その知識だけではなく、準備や試験当日の諸注意も必要ですが、ここでは、基本的にはVBAの知識に絞った対策になります。VBAエキスパート試験に関する全般的な事は、VBAエキスパート公式サイトこちらをご覧ください。受験に関すること(試験会場や費用等)は、良く確認しておくようにしましょう。筆者自身は、この試験を受けていません。この試験が開始されるよりはるか以前からVBAを使っていますので、試験を受ける機会はありませんでした。そこで、本シリーズを書き終えたら、実際に受験してみようかと思っています。(試験会場がかなり遠方にしかないので、どうしようかと思ってはいますが)試験問題は当然毎回違いますので、何点取れるものなのか確認してみたいと思っています。受験した時は、ここに感想や、これから受験する人に対する助言を書ければ良いなと思っています。『VBAエキスパート』リニューアルのお知らせ主な変更点は下記の4つです。スタンダード」に移動しました。※本サイト内容のリニューアル対応について「VBAベーシック」については新試験の内容に対応済です。変更範囲も限定的です。リニューアルされた公式テキストを確認し、必要に応じて追記しました。「VBAスタンダード」については一部新試験に未対応部分があります。目次については、新試験で削除された項目も残しています。削除項目は飛ばしてお読みください。学習すること自体は決して無駄ではありません。出題範囲の追加項目については、ExcelマクロVBA入門ExcelVBAとは、エクセルの操作を自動化するマクロ機能で使われているプログラミング言語です。VBAは、「MicrosoftVisualBasicApplications」の略になります。このVBA入門シリーズでは、実務で必要とされるVBAの入門として、基礎から業務応用までのVBA全般を基礎解説していきます。こちらの中で全て解説していますので、当該ページへのリンクとしている項目もあります。当然のことながら、VBAエキスパート試験に合格するためのVBA知識の習得にあります。業務改善の実務での活用についても、出来る限り意識しながら書いていきたいと思っています。業務改善の実務に活かす場合の参考になるように書いて行きたいと思っています。実社会において、小学校プログラミングでは業務にいかせません。後十数年もすれば、小学校からプログラミングを教育された子供たちが社会に出てきます。現在の50代以上の中には、会社にPCが導入されて苦労した人も多いはずです。いう時代が来ることを予想して準備していなければ、そうなっても仕方ありません。プログラミング言語は多数あります。その中で、大多数の人が業務に直接いかせる言語はVBAだと言って良いと思います。全てのPCに入っているExcelがあれば、直ぐに始められるプログラミング言語がVBAです。学習したのなら、その成果を確認する意味で試験を受験してみることは良いでしょう。これから、就職・転職を考えているなら、需要の多い有望な資格であることはご存知の通りです。VBAエキスパート公式テキスト2019/5/30発売リニューアル版2019/7/26発売リニューアル版こちらは必須として購入した方が良いでしょう。※筆者自身は、記事を書くために新旧ともに2冊ずつ購入しました。書籍を購入することで、学習用データが提供されています。・サンプルブック・VBAエキスパート模擬問題これらが使えるようになります。このシリーズでは、テキストを読みながら学習していることを前提とします。しないと、無駄な説明が多くなり要点がはっきりしなくなってしまいますし、テキストと同じことを説明したのでは書く意味がありませんので。出来る限りこのサイトだけで学習できるようには書くつもりでいます。筆者が模擬問題プログラムをやってみた※以下は旧試験の模擬問題をやった時のことです。ベーシック、スタンダードの両方の模擬問題プログラムを実際にやってみました。2つやるので時間的な事もあり、結構急いで回答しました。それでも所要時間は、ベーシックが15分くらい、スタンダードが25分くいかかったでしょうか。使う時間の大半は問題の文章を読む時間と、紛らわしい回答群の確認になります。スタンダートはVBAコードも長くなりますので、VBAコードを見るのに時間が必要になってきます。結果は・・・どちらも、35問正解/全40問65%から80%くらいが合格ラインとのことなので、まあ合格は大丈夫な点数だとは思いますが。練習問題もやらずにいきなり挑戦し、急いで回答したとはいえ、かなり不満というか、情けない点数ではあります。それにしてもこのような問題だと、満点を取るのはかなり大変かもしれませんね。テストはテスト、回答時に細心の注意は必要なようです。紛らわしい日本語も結構あるので、しっかり問題文の日本語を読み、(これはどんな試験にも言える事ですけど。2つ選択で1つしか選択してないとかあったし)VBAコードも、ほとんど同じようなVBAコードが並んでいるので、かなり良く見ないとダメですね。単語の入力はスペル間違いがあるとダメなので、ステートメント、プロパティ、メソッドのスペルはしっかり覚えタイプミスには注意が必要です。多くの場合入力候補を使うので(というか、使うべきなので)、スペルを完全に覚えている必要はほとんどありません。このようなテスト方法であれば仕方無いのでしっかり覚えるしかありません。いう意味では、やはり資格試験としての限界かもしれません。本来の業務に必要な知識の習得まで到達できていないように感じも少ししました。小分類の項目を列挙します。【ここでのポイント】なにを意識して学習したらよいか、どこを重点的に覚えたら良いかを書きます。小分類ごとの解説テキストの中で、覚えるべき要点を整理して解説していきます。テキストを読めばわかることは項目の列挙程度にとどめます。テキストでは長文で解説しているものを、覚えやすいように簡潔な文章で説明テキストでは用語が出てくるだけでほとんど解説していないが重要な事を詳細解説テキストでは扱っていないが試験に出る可能性のありそうな事項を追加解説つまり、参考書的な見方をしてもらえれば良いと思います。公式テキストは、それぞれ200ページ以上ありますので、同様の事を全て解説する訳にも行きません。簡潔な文章で、要点のみ解説するようにしたいと思います。試験に合格した後に、業務改善の実務に活かしたいですよね。逆に実務で使わない内容であれば、その理由と実務でのVBAコードの提示。合格後に少しでも業務改善の実務に活かせるように出来ればと考えています。本サイト内で同様の解説をしているページ本サイト内で応用として使っているページこれらへのリンクを掲載します。学習の補助として、業務改善の実務の参考として使えるようにしたいと思います。以下はVBAエキスパートの公式サイトに出ている出題範囲で、このシリーズの目次です。出題範囲の大分類ごとに1記事で作成します。公式テキストとは章立てが若干違っている部分もありますが、このシリーズでは出題範囲を採用しました。以下はVBAエキスパートの公式サイトに出ている出題範囲で、このシリーズの目次です。出題範囲の大分類ごとに1記事で作成します。公式テキストとは章立てが若干違っている部分もありますが、このシリーズでは出題範囲を採用しました。追加内容に関する本サイト既存ページWorksheetFunction|VBA入門VBA関数以外に、Excelワークシート関数をマクロVBAで使うことが出来ます、ワークシート関数は、VBA関数よりはるかに多くの関数があるので、ぜひ活用したいところです。ワークシート関数を使う事で、VBAコードを非常に簡潔に記述することが出来る場合が多いものです。追加内容に関する本サイト既存ページFindメソッド(Find,FindNext,FindPrevious)|VBA入門Findメソッドは、VBAでセル範囲内の条件に当てはまるセルを検索するものです。Findメソッドは、Rangeオブジェクトのメソッドで、ワークシート操作の「検索と置換」の「検索」の機能をVBAで使うものです。上の画像では「検索する文字列」だけしか指定できませんが、「オプション」をクリックすると、オートフィルタ(AutoFilter)|VBA入門オートフィルタはExcelのデータベースとしての非常に強力な機能を提供してくれています、VBAで、必要なデータだけに絞り込んで他のシートにコピーしたり、不要なデータを一括で削除したりする場合は、とても高速に処理することができます。VBAでオートフィルタを操作するには、以下のメソッド・プロパティおよびオブジェクトを使用します。複雑な条件(複数除外等)のオートフィルター(AutoFilter)オートフィルターはExcelにおいて重要かつ便利な機能ですが、その使い方の理解が不十分な事が多いようです、単純な条件の場合は問題ないのですが、条件が複雑になった途端に書き方で相談を受ける事が多々あります。オートフィルターの一般的な解説としては以下を参考にしたください。並べ替えは、データ処理の基本中の基本です、乱雑なデータを並べ替えることは、データ処理の第一歩です。マクロVBAで並べ替えを実行するには、シート操作の「並べ替え」の機能を使用することになります。そもそもデータを並べ替えるという事は、そのデータのキーが何かを考えるという事です。GetPhoneticメソッドとSetPhoneticメソッド(フリガナ)|VBA入門GetPhoneticメソッドは、指定した文字列の日本語の「ふりがな」を取得します。SetPhoneticメソッドは、セルに日本語の「ふりがな」を設定します。マクロVBAにおいて、「ふりがな」を扱う時はこれらのメソッドを使います。追加内容に関する本サイト既存ページテーブル操作の概要(ListObject)|VBA入門テーブルのVBAでの操作で使用するオブジェクトの概要の説明です、テーブルは、セルの範囲を表(テーブル)に変換することで、関連するデータの管理と分析を容易にできるエクセルの機能で、以前はリストと呼ばれていました。テーブルを作成して書式設定することで、データを視覚的にグループ化して分析しやすくできます。VBAでは、これらのオブジェクトを使い各要素にアクセスします。Error)|VBA入門マクロを実行していると、エラーメッセージが表示されマクロ実行が停止してしまう事があります。マクロがエラー停止しては自動化の目的が達成されませんので、エラー停止しないようにしなければなりません。エラーが出ないようにVBAを記述出来ればそれに越したことはありませんが、一切エラーを出さないようにVBAを書くことはかなり困難なものです。「OnErrorGoTo行ラベル」このステートメントは、実行時エラーが発生した時に、制御を指定の行ラベルに移動させるものです。マクロVBAは、エラーが発生するとその時点で停止してしまいます。VBAが実行不能となった場合に、エラー発生したVBAコードで停止します。「OnErrorResumeNext」ステートメントは、実行時エラーが発生してもマクロVBAを中断せずに、エラーが発生したステートメントの次のステートメントから実行を継続します。マクロVBAは、エラーが発生するとその時点で停止してしまいます。実際に受験したら書こうと思います。試験会場が遠いんですよね、それに、受験費用も結構高いし。受験時の注意とかを書ければと思っています。Next)|VBA入門7.マクロって何?VBAって何?|VBA入門8.セルに文字を入れるとは(Range,Value)|VBA入門9.空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula)|VBA技術解説10.ひらがな⇔カタカナの変換|エクセル基本操作ホームマクロVBAVBAエキスパート対策このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。GASスプレッドシート入門スプレッドシート応用GAS入門GAS応用ホームマクロVBAVBAエキスパート対策このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。