Excelマクロなんて自分に関係ない?いえいえ、実は本業だけでなく副業でも使えるんです。
クラウドソーシングサイトで探せば数千円から数万円の報酬がもらえる仕事がゴロゴロあります。
VBAはプログラミングの中でも習得しやすいから、狙い目のスキル。
それを短期間で学習するための本、「ExcelマクロVBA × ChatGPT 時短マスター術」をご紹介します。
✔ VBAコードの暗記不要!検索ワードが紹介されている
✔ 電子書籍だからリンクでさっと必要な情報へ飛べる
✔ プログラミングに必要な「考え方」が身に付く
✔ "業務に使える"複雑なコードを記述するのに役立つ
✔ 初心者が大助かりのChatGPTの活用方法がわかる
Kindle Unlimitedなら無料で読めます!
第1章 VBAのメリットは こんなにある!
VBAを習得するメリットとして、以下のようなものが紹介されています。
①マクロの記録と再生
プログラミングコードを自分で記述しなくても、自動でコードを書いてくれる。ただし、簡単なことしかできない。
②大量データの自動入力と処理
自分でVBAコードを記述すれば、大量のデータを自動でフィルタリングしたり、計算や集計を自動化したりできる。
③レポートの自動作成
データを抽出して集計したあとに、グラフの作成や書式設定などを自動化できる。
④ユーザーインターフェースの改善
ユーザーが直感的にデータを入力したり操作したりできる対話型の画面を作成できる。
⑤外部データの取り込みと連携
データベースやWebサービスからデータを取得したり、他のファイルとのデータのやり取りを行ったりすることができる。
VBAの習得には時間がかかるが、それによって恒常的に業務を効率化できるので多大な恩恵がある!
第2章 VBAの基礎を知ろう
この章では、VBAを学ぶにあたっておさえておくべき基礎についてさらっと触れられています。詳しくは以降の章に書かれています。
■ 基本的な書き方やルール
①必ずSubで書き始めて End Subで終わる。【丸暗記】
Sub 任意の処理名() ~処理~ End Sub
|
②処理に関係ない説明文(コメント)はシングルクオーテション「'」をつけて記述する。【丸暗記】
③1行につき1つの処理を記述する【丸暗記】
④変数は、データを一時的に保存するための箱。Dimで「宣言」することで使用できる【丸暗記】
Dim Number As Long Number = 10 Cells(1,1).Value = Number
|
④ある条件が成り立つかどうかを判断して、処理を分岐させるのが「条件分岐」。「If」や「Select Case」を使用する。
⑤ある処理を繰り返し実行するのが「ループ」。「For...Next」や「Do...Loop」を使用する。
⑥予期しないエラーが発生した際に、エラーの発生を検知し、適切な処理を行う方法をエラーハンドリングという。「On Error」ステートメントを使用する。
■ モジュールの作成
ここは丸暗記しておいたほうが便利です。
Excel上で「Alt + F11」キーを押すことでVBAエディタに切り替え。
VBAエディタで「挿入」メニューから「標準モジュール」を選択すると、新しいモジュールが作成される。
右側の白い画面のほうにコードを記述。
■ VBAコードの実行
VBAコードを実行するには、VBAエディタの実行ボタンをクリック。
通常のExcelの画面から実行する場合は上にあるメニューバーから「開発」→「マクロ」をクリック。実行したいマクロ名をクリックし、「実行」ボタンを押す。
実行したいマクロ名をクリックし、「実行」ボタンを押す。
※ファイルを保存するときは、保存形式として「Excelマクロ有効ブック (*.xlsm)」を選択。
第3章 変数とデータ型
■ 変数の宣言
変数は、データを一時的に保存するための箱。変数には任意の名前をつけることができ、その名前に代入された値にアクセスできる。【この概念は暗記】
変数を使用する前に、変数の宣言が必要。 Dim ステートメントを使用して変数を宣言する。
Dim num As Integer Dim name As String
|
正しいデータ型を選ばないとエラーが起きるが、データ型を覚える必要はない。
ネットで「VBA 変数 宣言」と検索して選べばOK。
■ 変数の命名規則
変数には命名規則があるが、規則を守れていない場合はエラーが出るのでエラーが出たら修正すればOK。
全角半角英数字が使えると覚えておこう。
■ 変数への値の代入
変数に値を代入するには、代入演算子(=)を使用する。
num = 10 name = "John"
|
変数に値を代入することで、その値を利用して様々な処理を行うことができる。
第4章 Excel独自の概念
■ EXCELオブジェクトモデルの概要
・オブジェクト=操作する対象=「ワークブック」や「シート」「セル」
・オブジェクトを操作するには決まったコードの書き方がある【覚えておく】
※以下に紹介するコード例はそのままコピペで使えばOK(任意の変数名やファイルパスは自由にカスタマイズ)
■ WORKBOOKオブジェクトの操作
・ワークブックの新規作成
ワークブックを新規作成する場合、以下のようなコードを記述する。(「wb」は任意でつけたワークブックを示す変数)
Dim wb As Workbook Set wb = Workbooks.Add
|
・既存のワークブックを開く
既存のワークブックを開くには、以下のコードを使用する。
Dim wb As Workbook Set wb = Workbooks.Open("C:\フォルダ\ファイル名.xlsx")
|
■ WORKSHEETオブジェクトの操作
・シートの追加
新しいシートをワークブックに追加するには、以下のコードを使用する。
Dim ws As Worksheet Set ws = wb.Worksheets.Add
|
・シートの削除
不要なシートをワークブックから削除するには、以下のコード例を使用。
wb.Worksheets("シート名").Delete
|
・ワークシートの選択
ワークシートを操作する前に、対象のワークシートを選択する必要がある。以下のコードを使用。
Dim ws As Worksheet Set ws = wb.Worksheets("シート名") ws.Select
|
ワークシートを変数wsに代入することで、以降の操作で使用することができるということは覚えておく。
■ セルに対する操作
単一のセルを指定する場合はCellsオブジェクト、複数のセル範囲を指定する場合はRangeオブジェクトを使用する。【概念として覚えておく】
・セルに値を設定する
ws.Range("A1").Value = "Hello, World!"
|
ws.Cells(1, 1).Value = "Hello, World!"
|
・行の挿入
ws.Rows(5).Insert |
ws.Cells(5, 1).EntireRow.Insert |
・行の削除
ws.Rows(10).Delete
|
ws.Cells(10, 1).EntireRow.Delete
|
・範囲の選択
' A1セルを選択する Range("A1").Select
' A1からB5までの範囲を選択する Range("A1:B5").Select
|
' A1セルを選択する Cells(1, 1).Select
|
※Cellsを使う場合は単一のセルのみ選択可能
・範囲の操作
範囲の選択をした後に、様々な操作を行うことができる。
' 範囲に値を書き込む Selection.Value = "Hello, World!"
' 範囲の背景色を変更する Selection.Interior.Color = RGB(255, 0, 0)
' 範囲のフォントとサイズを変更する Selection.Font.Name = "Arial" Selection.Font.Size = 12
' 範囲をコピーする Selection.Copy
' 範囲を削除する Selection.Delete
|
・セルの書式設定
' 数値形式(小数点2桁)に設定する Range("A1").NumberFormat = "0.00"
' 通貨形式に設定する Range("B1").NumberFormat = "$#,##0.00"
' 日付形式に設定する Range("C1").NumberFormat = "yyyy/mm/dd"
' パーセンテージ形式に設定する Range("D1").NumberFormat = "0.00%"
' 文字列形式に設定する Range("E1").NumberFormat = "@"
|
これらは、コピペして使いましょう!
こんな感じでVBAの基礎知識が紹介されていくので、途中は飛ばします。
第8章 ChatGPTの活用方法
無料版のChat GPTでは業務で使うレベルの複雑なマクロを記述するのはかなり難しい。
処理の手順を1ステップずつ詳細に書き出すことができれば、GPTがそれをコードに置き換えるということはしてくれる。
置き換えられたコードも完璧なことはまれなので、自分でVBAコードを読めるようになる必要がある。
また、以下のように活用することでコード記述の効率が上がる。
①簡単な処理を記述&説明してもらう
②コメントを書いてもらう
③コードが正しいかをチェックしてもらう
無料版のChat GPTはよく使えなくなるうえに性能がそんなによくないので、Bing AIとの併用がおすすめ。
AIツールを利用する際は、個人情報や会社の機密情報をそのまま入力せず、「A社」といった表現にするなど工夫する。
第9章 マクロを書いてみよう!
この章では、具体的な業務の事例をとおしてマクロの書き方が1ステップずつ解説されています。
その他、
第10章 エラーへの対処法
第11章 コードを書く時のコツ
第12章 応用テクニック
と続きます。
著者が本書を執筆したきっかけは「半年で部内メンバーがエクセルVBAを使いこなせるようにせよ」と会社で指示があったこと。
一般的な書籍を使ったレクチャーは説明が細かすぎて時間がかかる。肝を捉えた簡潔で実践的な内容の本が見つからない。
ということで、短時間でも業務効率化に必要な知識をおさせた本書ができた、ということです。
ぜひこれを読んでVBAスキルを身に付けて、仕事を早く終わらせて帰りましょう♪
★にほんブログ村に参加しています★
クリック頂けると嬉しいです!