ノンプロ研初心者プログラミング講座【VBAコース第3期】第3回
- ntakahashi0505
- 1552
- 4
- 0
- 5
【プロシージャ】 一連のステートメントをまとめたもの 前回まではSubプロシージャを使ってきました。 今までは単一のプロシージャを動かしてきましたが 処理をまとめる場合は部品化して 他のプロシージャを呼び出して使うこともできます。 同じモジュールに同じ名前のマクロは使えません #ノンプロ研
2020-11-30 20:14:30【プロシージャのスコープ】※講座外 同じモジュールに書く場合は問題ないですが モジュールをわけてプログラムを作る場合などは プロシージャのスコープの問題がでてきます。 vba-ie.net/programing/pro… #ノンプロ研
2020-11-30 20:15:32つづき Public(モジュール外から呼び出せる)とPrivate(モジュール外から呼び出せない)の2つが存在し、 プロシージャの宣言ステートメントの前で指定してあげるとレベルを設定できます。 特に宣言しない場合はPublicになります。 #ノンプロ研
2020-11-30 20:15:51Subプロシージャの呼び出し プロシージャ名 または、 Call プロシージャ名 2通りある? #ノンプロ研
2020-11-30 20:16:01【プロシージャのスコープその2】※講座外 他のブックのマクロもVBAでは呼び出し可能ですが 後からメンテナンスするときに大変になるためおすすめはしません #ノンプロ研
2020-11-30 20:16:13【引数(ひきすう)と戻り値】 他のプロシージャを呼び出して使うときに そのプロシージャに渡す値を引数といいます。 また一連の処理を行った後に返す値を戻り値といいます。 #ノンプロ研
2020-11-30 20:19:58【プロシージャの種類】※講座外 ・Subプロシージャ ⇒戻り値がありません。 ・Functionプロシージャ ⇒戻り値があります。 ・Propertyプロシージャ(Let/Set/Get) ⇒ものによります ほかの言語だと戻り値の有無にかかわらず関数というのでちょっと不思議かも? #ノンプロ研
2020-11-30 20:20:27【Subプロシージャの呼び出し】 プロシージャ名 引数あれば または Call プロシージャ名(引数あれば) ⇒プロシージャ名だけで呼び出せますが 変数なのかプロシージャ名なのかわからなくなってしまうので Callを使うのがベターかも。 239-programing.com/excel-vba/basi… #ノンプロ研
2020-11-30 20:20:51引数が、プロシージャのパラメータに渡される。引数を受け取る。 GASだと、パラメータじゃなくて、仮引数。 #ノンプロ研
2020-11-30 20:21:07【サブルーチン】※講座外 親から呼び出される他の関数をサブルーチンといったりします VBAというよりプログラミング用語 ちなみにSubはサブルーチンから #ノンプロ研
2020-11-30 20:21:11【Subプロシージャの宣言】 引数がある場合は、プロシージャ名のあとに 引数に対応する変数(パラメーター)を宣言します。 brain.cc.kogakuin.ac.jp/~kanamaru/lect… Sub プロシージャ名(パラメータ1 As 型, パラメータ2 As 型,...) '処理 End Sub #ノンプロ研
2020-11-30 20:21:50【引数とパラメーター】 名前を指定しない場合は引数の値がその順で パラメーターに渡されるので順番間違えないように…。 ▼引数とパラメーターの違い tooljp.com/windows/chigai… #ノンプロ研
2020-11-30 20:22:18ここでVBAにはつきものの複数の書き方があるという問題。どっちがいいのか?よりも一貫性を大事に。Subプロシージャの呼び出し時はCallを付けて引数はカッコでくくるで統一! #ノンプロ研
2020-11-30 20:22:43プロシージャを呼び出す場合、2種類あり。 ・Callをつける Call プロシージャ名(引数...) 引数の前にカッコつける。 ・Callなし プロシージャ名(引数...) 引数の前にカッコつけない。 #ノンプロ研
2020-11-30 20:22:47Call プロシージャ名(引数1, 引数2, ...) Call がないと、()省略できる プロシージャ名 引数1, 引数2, ... #ノンプロ研
2020-11-30 20:24:25