Excelを勉強しましょう EnjoyExcel

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

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

f:id:EnjoyExcel:20210626141115p:plain

 

VBAの記事を書くことになりました。

 

色々な方が記事を書かれたり書籍を出している中でいまさら感がありますが私なりのポイントを挙げるとすると勉強初期に自分が困ったことや知りたかったことを中心にネタを提供していきたいと思っています。

 

区切りとしては「書店に置いてある初級編の本がある程度読めるようになる」、「自力で勉強出来るようになる」というところまでの知識を提供したいと思っています。

 

他の言語を勉強してからの人はおそらく大丈夫なのですがVBAが最初という人は勉強しようと思って書店に行ったりネット記事を読んでもまず「読めない、分からない」が先に来てしまいす。

 

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

 

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

 

目次

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

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

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

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

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

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

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

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

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

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

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

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

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

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

 

・・・ 「けっこう多いな」と思った方居ませんか?途中まででも良いので読んでみてください。最初の3つぐらいでも良いので読んでいただければVBAがどんなものなのか理解いただけると思います。

 

では早速始めます。 

 

VBAってなんですか?よくマクロって聞きますけど一緒なの?って思ったことないですか?

 

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

 

マクロというのはいろんな作業を集約して一つの命令にしたものです。

 

Excelの中に「マクロの記録」というコマンドがあります。

開発タブの中に居ます。開発タブの出し方は後程紹介します。

f:id:EnjoyExcel:20210626125446p:plain

このコマンドは自分が作業したものを記録して後で同じ作業を実行出来るというコマンドです。セルに記入、コピー、貼付け等作業の記録が出来ます。こういった1つ1つの作業を合わせたものをマクロと呼びます。

 

「マクロの記録」という名称からも「マクロ」といわれたら作業の集合体なんだなと思ってください。個人的には「マクロ=自動化」でもないと思っています。でもこういったイメージ持っている人結構多いと思います。

 

一方VBAというのはVisual Basic for Applications の略称です。

Visual Basicという言語をベースにしてマイクロソフトのアプリケーションに特化して開発されたのがVBAです。要するに言語の名前です。

 

このマクロはExcelVBAで書かれています。なんて使い方が正しいです。

 

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

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

 

では早速言語を勉強して・・・って思いがちですが英語等話をするための言語は勉強するためには教科書買ったり学校行ったり、youtube見たりするのですがプログラミング言語は環境構築というものがもれなく付いてきます。

 

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

 

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

 

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

 

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

 

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

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

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

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

f:id:EnjoyExcel:20210626135303p:plain

 

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

 

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

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

 

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

 

では実際に環境構築に入ります。