VBAエキスパート対策
VBAエキスパート試験に合格するために必要なVBA知識についての対策です。
VBAエキスパート公式サイト
こちらをご覧ください。
特に、受験に関すること(試験会場や費用等)は、良く確認しておくようにしましょう。
この試験が開始されるよりはるか以前からVBAを使っていますので、試験を受ける機会はありませんでした。
そこで、本シリーズを書き終えたら、実際に受験してみようかと思っています。
(試験会場がかなり遠方にしかないので、どうしようかと思ってはいますが)
試験問題は当然毎回違いますので、何点取れるものなのか確認してみたいと思っています。
受験した時は、ここに感想や、これから受験する人に対する助言を書ければ良いなと思っています。
VBAエキスパート試験リニューアル
・出題の形式(ドロップダウンリスト形式、クリック形式、ドラッグ&ドロップ形式)
・出題範囲
セルの操作:最終セルを特定する
変数の活用
見つからなかったときの判定
検索したセルを使う
オートフィルターの基本
絞り込んだ結果のコピーとカウント
絞り込んだ結果の編集
複雑な条件の並べ替え
特殊な並べ替え
文字列の並べ替え
フリガナの操作
テーブルの特定
テーブル部位の特定
テーブル操作の例
【削除】
UserForm
メニューの操作
Windowsの機能を利用する
レジストリの操作
変数と配列:静的変数
変数と配列:ユーザー定義型
ファイルの操作:テキストファイルの操作
リニューアルされた公式テキストを確認し、必要に応じて追記しました。
削除項目は飛ばしてお読みください。
ただし、実務としてはどれも必要なものになりますので、
学習すること自体は決して無駄ではありません。
ExcelマクロVBA入門
本シリーズの目的
VBAエキスパート試験に合格するためのVBA知識の習得にあります。
業務改善の実務での活用についても、出来る限り意識しながら書いていきたいと思っています。
業務改善の実務に活かす場合の参考になるように書いて行きたいと思っています。
VBAエキスパート学習の意義
実社会において、小学校プログラミングでは業務にいかせません。
その時に、プログラミングなんてやった事ないでは・・・
現在の50代以上の中には、会社にPCが導入されて苦労した人も多いはずです。
そういう時代が来ることを予想して準備していなければ、そうなっても仕方ありません。
その中で、大多数の人が業務に直接いかせる言語はVBAだと言って良いと思います。
ほぼ全てのPCに入っているExcelがあれば、直ぐに始められるプログラミング言語がVBAです。
そして、
せっかく学習したのなら、その成果を確認する意味で試験を受験してみることは良いでしょう。
もちろん、
これから、就職・転職を考えているなら、需要の多い有望な資格であることはご存知の通りです。
VBAエキスパートの種類
Excel VBA スタンダード
Access VBA ベーシック
Access VBA スタンダード
VBAエキスパート公式テキスト
こちらは必須として購入した方が良いでしょう。
※筆者自身は、記事を書くために新旧ともに2冊ずつ購入しました。
書籍を購入することで、学習用データが提供されています。
・サンプルブック
・VBAエキスパート模擬問題
これらが使えるようになります。
そうしないと、無駄な説明が多くなり要点がはっきりしなくなってしまいますし、
テキストと同じことを説明したのでは書く意味がありませんので。
筆者が模擬問題プログラムをやってみた
2つやるので時間的な事もあり、結構急いで回答しました。
それでも所要時間は、ベーシックが15分くらい、スタンダードが25分くいかかったでしょうか。
使う時間の大半は問題の文章を読む時間と、紛らわしい回答群の確認になります。
特にスタンダートはVBAコードも長くなりますので、VBAコードを見るのに時間が必要になってきます。
結果は・・・
どちらも、35問正解/全40問
65%から80%くらいが合格ラインとのことなので、
まあ合格は大丈夫な点数だとは思いますが。
練習問題もやらずにいきなり挑戦し、急いで回答したとはいえ、
かなり不満というか、情けない点数ではあります。
それにしてもこのような問題だと、満点を取るのはかなり大変かもしれませんね。
紛らわしい日本語も結構あるので、しっかり問題文の日本語を読み、
(これはどんな試験にも言える事ですけど。2つ選択で1つしか選択してないとかあったし)
VBAコードも、ほとんど同じようなVBAコードが並んでいるので、かなり良く見ないとダメですね。
また、単語の入力はスペル間違いがあるとダメなので、
ステートメント、プロパティ、メソッドのスペルはしっかり覚えタイプミスには注意が必要です。
多くの場合入力候補を使うので(というか、使うべきなので)、
スペルを完全に覚えている必要はほとんどありません。
このようなテスト方法であれば仕方無いのでしっかり覚えるしかありません。
そういう意味では、やはり資格試験としての限界かもしれません。
実務ではどうでも良い事を覚えるのに時間を費やさなければならず、
本来の業務に必要な知識の習得まで到達できていないように感じも少ししました。
各ページ内の構成
どこを重点的に覚えたら良いかを書きます。
テキストを読めばわかることは項目の列挙程度にとどめます。
テキストでは長文で解説しているものを、覚えやすいように簡潔な文章で説明
テキストでは用語が出てくるだけでほとんど解説していないが重要な事を詳細解説
テキストでは扱っていないが試験に出る可能性のありそうな事項を追加解説
つまり、参考書的な見方をしてもらえれば良いと思います。
公式テキストは、それぞれ200ページ以上ありますので、同様の事を全て解説する訳にも行きません。
なるべく簡潔な文章で、要点のみ解説するようにしたいと思います。
そこで、
業務改善の実務で活用する場合の助言や、
逆に実務で使わない内容であれば、その理由と実務でのVBAコードの提示。
合格後に少しでも業務改善の実務に活かせるように出来ればと考えています。
本サイト内で応用として使っているページ
これらへのリンクを掲載します。
学習の補助として、業務改善の実務の参考として使えるようにしたいと思います。
VBAベーシック:VBAエキスパート対策
出題範囲の大分類ごとに1記事で作成します。
公式テキストとは章立てが若干違っている部分もありますが、このシリーズでは出題範囲を採用しました。
- マクロとVBAの概念
マクロとは何か
VBAとは何か
VBAの特徴
Visual Basic Editorの操作と画面
ブックとマクロの関係
セキュリティレベル - マクロ記録
マクロ記録とは
マクロ記録の限界
マクロ記録の活用方法
記録のしかた
記録される場所
標準モジュール
個人用マクロブック - VBAの構文
オブジェクト式
ステートメント
関数(Right、Left、Mid、InStr、Now、Format、MsgBox、InputBox など)
演算子(「+」「-」「*」「/」「^」「\」「Mod」「And」「Or」「Not」
モジュールとプロシージャ - 変数と定数
変数の意味
変数の宣言
変数の代入と取得
スコープ
定数の意味と使い方 - セルの操作
RangeとCells
セルにデータを入力する
セルのデータを取得する
セルの書式設定 - ステートメント
If...End If
For...Next
With...End With - ブックの操作
ブックを開く
ブックを保存する
ブックを閉じる - シートの操作
シートを挿入する
シートを削除する
シートに関連する基本的な操作 - マクロの実行
Visual Basic Editorから実行する
[マクロ]ダイアログボックス
シート上にボタンを配置する
メニュー/ツールバーに登録する
クイックアクセスツールバーに登録する - VBAベーシック試験対策まとめ
VBAスタンダード:VBAエキスパート対策
出題範囲の大分類ごとに1記事で作成します。
公式テキストとは章立てが若干違っている部分もありますが、このシリーズでは出題範囲を採用しました。
- プロシージャ
引数の意味
引数の宣言
値渡しと参照渡し - イベント ・・・ 出題範囲から削除
イベントとは
ブックのイベント
シートのイベント - ステートメント
Select Case
Do...Loop
For...Eachほか - APIとOLEオートメーション
OLEオートメーションの概念
OLEオートメーションの使い方
OLEオートメーションの注意点
APIの概念
APIの使い方 - 変数と配列
静的変数 ・・・ 出題範囲から削除
動的配列
オブジェクト変数
ユーザー定義型 - レジストリの操作 ・・・ 出題範囲から削除
レジストリの概念
レジストリ操作の注意点
レジストリに登録する
レジストリを取得する
レジストリを削除する - ファイルの操作
テキストファイルの操作 ・・・ 出題範囲から削除
ファイルのコピーと移動
フォルダの操作
文字列操作によるパスの指定 ・・・ 出題範囲に追加 - 関数
よく使う関数
WorksheetFunctionオブジェクト ・・・ 出題範囲に追加追加内容に関する本サイト既存ページWorksheetFunction|VBA入門・ワークシート関数の使い方 ・WorksheetFunctionで使用できる関数 ・個別の関数の使い方 ・関数の結果(戻り値) ・WorksheetFunctionの使用例. ・検索系の関数での日付の扱い ・WorksheetFunctionのエラー対処 ・最後に
- 検索とオートフィルター ・・・ 出題範囲に追加
検索の基本 ・
見つからなかったときの判定
検索したセルを使う
オートフィルターの基本
絞り込んだ結果のコピーとカウント
絞り込んだ結果の編集追加内容に関する本サイト既存ページFindメソッド(Find,FindNext,FindPrevious)|VBA入門・Findメソッド ・FindNext メソッド ・FindPrevioust メソッド ・Application.FindFormatメソッド ・FindメソッドとFindNextメソッドの実戦例オートフィルタ(AutoFilter)|VBA入門・Range.AutoFilterメソッド ・AutoFilterModeプロパティ ・AutoFilterオブジェクト ・オートフィルタのVBA使用例 ・日付のフィルタ ・オートフィルタまとめ複雑な条件(複数除外等)のオートフィルター(AutoFilter)・"A","C"で絞り込む場合 ・"A","C"以外で絞り込む場合 ・"A","C","E"以外で絞り込む場合 ・作業列を追加
- データの並べ替え ・・・ 出題範囲に追加
簡単な条件の並べ替え
複雑な条件の並べ替え
特殊な並べ替え
文字列の並べ替え
フリガナの操作 ・追加内容に関する本サイト既存ページ並べ替え(Sort)|VBA入門・Range.Sortメソッド・・・Excel2003までのソート ・2007以降の並べ替え ・Excel2003までのSortとExcel2007以降のSortの使い分けGetPhoneticメソッドとSetPhoneticメソッド(フリガナ)|VBA入門・GetPhoneticメソッド ・GetPhoneticメソッドの使用例 ・SetPhoneticメソッド ・SetPhoneticメソッドの使用例
- テーブルの操作 ・・・ 出題範囲に追加
テーブルとは何か
テーブルの特定
テーブル部位の特定
テーブル操作の例追加内容に関する本サイト既存ページテーブル操作の概要(ListObject)|VBA入門・ListObjects コレクション ・ListObject オブジェクト ・テーブル操作のVBAコードテーブル操作のVBAコード(ListObject)|VBA入門・テーブル操作のVBAサンプル使用例 ・テーブルに設定 ・テーブルスタイル一覧 ・テーブルの存在確認 ・テーブルを範囲に変換 ・テーブルの範囲を再設定 ・テーブルのセルに値を入れる ・テーブルのセルの数式変更 ・テーブルの行・列のクリア ・テーブルの列の数式設定 ・テーブルの行挿入・削除 ・テーブルの列挿入・削除 ・テーブルのオートフィルター ・テーブルの並べ替え(ソート) ・テーブルの集計行挿入・削除・非表示 ・テーブルの右端に集計列追加 ・テーブルに新しい行列を含めない ・テーブルの使い方の基本 ・サイト内のテーブルに関するページ
- ユーザーフォームとメニューの操作 ・・・ 出題範囲から削除
ユーザーフォームの操作
コントロールの操作
メニューとツールバーの操作 - エラーへの対処
On Error Goto
On Error Resume Next
Errorオブジェクトほか
エラーが起きないデータに整える ・・・ 出題範囲に追加追加内容に関する本サイト既存ページエラー処理(On Error)|VBA入門・マクロVBAのエラー発生例 ・エラー処理のステートメント ・実行時エラー関連記事「On Error Go To」と「Exit Sub」|VBA入門・On Error GoTo 行ラベル ・Exit Sub ・On Error の有効範囲とその動作について ・最後に「On Error Resume Next」とErrオブジェクト|VBA入門・On Error Resume Next ・Errオブジェクト ・On Error Resume Next の使用例 ・「On Error Resume Next」の最後に
- デバッグの基礎 ・・・ ベーシックよりスタンダードに移動
デバッグとは
論理エラーと文法エラー
イミディエイトウィンドウ
ブレークポイント
ステップ実行 - VBAスタンダード試験対策まとめ
あとがき:VBAエキスパート対策
試験会場が遠いんですよね、それに、受験費用も結構高いし。
ここまでに書き漏れていたこととか、
受験時の注意とかを書ければと思っています。
新着記事NEW ・・・新着記事一覧を見る
TRIMRANGE関数(セル範囲をトリム:端の空白セルを除外)|エクセル入門(2024-08-30)
正規表現関数(REGEXTEST,REGEXREPLACE,REGEXEXTRACT)|エクセル入門(2024-07-02)
エクセルが起動しない、Excelが立ち上がらない|エクセル雑感(2024-04-11)
ブール型(Boolean)のis変数・フラグについて|VBA技術解説(2024-04-05)
テキストの内容によって図形を削除する|VBA技術解説(2024-04-02)
ExcelマクロVBA入門目次|エクセルの神髄(2024-03-20)
VBA10大躓きポイント(初心者が躓きやすいポイント)|VBA技術解説(2024-03-05)
テンキーのスクリーンキーボード作成|ユーザーフォーム入門(2024-02-26)
無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)
アクセスランキング ・・・ ランキング一覧を見る
1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.RangeとCellsの使い方|VBA入門
6.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
7.セルのクリア(Clear,ClearContents)|VBA入門
8.メッセージボックス(MsgBox関数)|VBA入門
9.条件分岐(Select Case)|VBA入門
10.ブック・シートの選択(Select,Activate)|VBA入門
このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。