Excelを勉強しましょう EnjoyExcel

アイコンの機能や関数の説明、VBA初心者向けの勉強方法について情報掲載しています。関数、VBAともに理解が進むように出来るだけ事例を交えて説明しています。

VBA-1 ExcelVBAとは?マクロとの違い できる事を解説

f:id:EnjoyExcel:20210626141115p:plain

VBA-1 ExcelVBAとは?マクロとの違い できる事を解説

 

はじめに

Excelの作業は関数である程度の事はできる様になりますが一定の範囲を超えると手作業では対応出来なくなります。

 

多くの人が「マクロ」と呼んでいるExcelVBAが使えるとほとんどの問題は解決します。

 

作業は一瞬で終わり人海戦術で残業なんていう仕事のやり方から距離を置くことが出来ます。

 

私ここ数年でVBAを使って毎年1,000時間程度の業務改善を行ってきました。

 

その経験をもとに勉強初期に自分が困った事、知りたかった事を中心に情報をまとめてみました。

 

今回のシリーズの目標としては「書店に置いてある初級編の本がある程度読めるようになる」、今から勉強を始める人が「自力で勉強出来るようになる」というところまでの知識を提供したいと思っています。

 

並行してアウトプットも用意します。

 

ワークシート関数のVLOOKUP関数が使って複数のデータから欲しい値を取り出すところまで勉強を進めていきます。

 

もちろん自力でコードが書けるようになります。

 

プログラミングはVBAが最初という人は勉強しようと思って書店に行ったりネット記事を読んでもまず「読めない、分からない」が先に来てしまいす。

 

 ・・・それで諦めてしまう人結構居るんですよ。そこを何とかしたいと思っています。

 

最初に明確にしておきたい要件がありこの記事だけ少し長いですがご容赦ください。

目次

最初に全体の構成を見ていただく為に目次を用意しました。全14回で構成しています。

目次

VBA-1 ExcelVBAって何?マクロとの違いは?

VBA-2 環境構築をしましょう。VBEの勉強です。

VBA-3 コードを書きましょう。

VBA-4 オブジェクト、プロパティ、メソッド・・・後で考えよう。

VBA-5 Rangeだけでもいろんな書き方がありますよ。

VBA-6 表の最終行と最終列ってどうやって指定するの?

VBA-7 いろんなものが入る箱。変数を使いましょう。 

VBA-8 変数っていろんな型がある。万能ですが形にこだわります。 

VBA-9 セルに罫線を書く & 実行ボタンを用意してみよう。

VBA-10 メソッドについて触れてないので少し話をします。 

VBA-11 メッセージボックス。アプリケーションっぽくなってきた。 

VBA-12 繰り返し処理が出来ると沢山の仕事をこなせます。 

VBA-13 VBAでは関数とワークシート関数って分けて使います。

VBA-14 VLOOKUP関数を知らない人でも使えるツールを作ってみよう。

 

最初の3つぐらいでも良いので読んでいただければVBAがどんなものなのか理解いただけると思います。では早速始めます。 

VBAとマクロの違い

VBAってなんですか?よくマクロって聞きますが一緒なの?って思ったことないでしょうか。

 

まずは結論から。この2つは明確に違うものを指しています。

マクロ

「マクロ=自動化ですよね」という方 結構多いと思います。

 

マクロというのはいろんな作業を集約して一つの命令にしたものです。作業のツールボックスみたいなイメージでしょうか。

 

Excelの中に「マクロの記録」というコマンドがあります。開発タブの中に居ます。開発タブの出し方は次回紹介します。

f:id:EnjoyExcel:20210626125446p:plain

このコマンドは自分が作業したものを記録して後で同じ作業を実行出来るというコマンドです。

 

セルに値を記入、コピー、貼付け等色んな作業の記録が出来ます。加えて個々の作業を一連の作業としてまとめてくれます。さらに記憶もしてくれます。

 

この「マクロの記録」というアイコンで実現出来るような「1つ1つの作業を集合させたもの」をマクロと呼びます。

 

というわけで「マクロ」といわれたら自動化の事だよねと思わず作業の集合体なんだなと思ってください。

VBA

一方VBAというのはVisual Basic for Applications の略称です。Visual Basicという言語をベースにしてマイクロソフトのAppに特化して開発されたのがVBAです。

 

要するに言語の名前です。このマクロはExcelVBAで書かれています。という使い方が正しいです。

 

ExcelのほかにWord、PP、AcssesにもVBAがあります。

 

ExcelVBAが分かったらほかのアプリケーションも開発出来ちゃう?と思えてしまいますが別物です。ご注意ください。

できる事

おおまかに言うと「何でも」できます。全部1クリックで済む様に作業グループを構築出来ます。

 

  • Excel画面の上方に配置されているアイコンにある作業全て
  • 自PCのAppとのへのアクセス、情報転送、取得、指示等
  • 外部Web Appへのアクセスと情報転送、取得、指示等

 

具体例)

  • 条件付き書式の設定やピボットテーブルのセット
  • AフォルダにあるB.xlsxのセルCからセルDの範囲の値を削除して保存
  • Yahooのニューストピックスをタブを切替えて全て取得する

 

他にも例を挙げられないぐらい何でも出来ます。勉強したくなってきましたよね。

環境構築について

プログラミング言語は勉強を始める前に環境構築が必要です。

 

これが非常に厄介です。ほとんどの人はここで勉強を終えます。ただしVBAは他の言語より数段簡単です。とはいえ分かりにくいのでしっかり説明します。

Case1:Web関連の言語を勉強する時

ここはイメージで聞いていただきたいのですが多くの言語は言語本体の勉強とエディタ、ブラウザ、サーバを用意する必要があります。

 

  • エディタはコードを書く場所
  • ブラウザはコードを実行させる場所
  • サーバは様々なデータを収納する場所です。

 

そのうえでAmazonさんみたいな販売サイトを自分で作ろうと思うと言語は最低4つは必要です。

 

・HPを用意するためにHTMLを学ぶ

・HTMLで用意した情報をグラフィカルに表現するためにCSSを学ぶ

・画面遷移やデータベースサーバーとの情報のやり取りのためにPHPを学ぶ

・データベースサーバから情報を取得するためにSQLを学ぶ

f:id:EnjoyExcel:20210626135303p:plain

・・・これに加え最初に提示した自力でエディタを用意して有料サーバを比較検討して契約がなんやかんやってやっているとほんと大変なのです。

Case2:VBAを勉強する時

そんな中VBAは環境構築に関してはほんと優秀です。

エディタは自分で持ってますしブラウザは実行環境なのでセルの画面、サーバーはセルの画面をサーバー代わりに出来ます。別の.xlsxをサーバにしてもよいです。

 

言語も1つで済みますので環境構築する必要がほとんどないのです。

まとめ

ざっとですがVBAとマクロの違いや何が出来るのかを解説してきました。次は実際に環境構築に入りましょう。

 

参考 低価格でVBAの基礎が学べるオンラインスクールの紹介

低価格でVBAの基礎が学べるオンラインスクールです。無料体験があったので自分で試してみました。コスパが良いし質問もすぐ出来るので分かりやすいなと感じました。

 

正式に申し込むと90分×10コマで4万円代だそうです。もちろん高いですが相場よりは断然安いと思います。

 

キャンペーン中だと20%オフになる様です。気になる方は確認してください。引き続き私のブログもよろしくお願いします。