[ノンプロ研]VBA初心者講座第3回・プロシージャ、関数

『コミュニティ「ノンプログラマーのためのスキルアップ研究会」VBA初心者講座第3回のツイートまとめです。コンテンツは「プロシージャ、関数」です。 https://tonari-it.com/community-nonpro-semi/
4
Takushi✨プログラミング学習中 @Taxi3134

20:00~ノンプロ研VBA初心者講座第3回。引数を受け取るSubプロシージャ、Functionプロシージャ = 関数の解説です! #ノンプロ研 pic.twitter.com/Vbi0Bhns5I

2021-06-16 19:28:21
拡大
根岸 @2a9SouLnhptnIqG

ノンプロ研初心者向け講座【VBAコース】 第3回目 始まります! #ノンプロ研

2021-06-16 20:01:05
根岸 @2a9SouLnhptnIqG

3回目は プロシージャ、関数 です! 今日はボリュームあります! 頑張りましょう!! #ノンプロ研

2021-06-16 20:02:54
かにみそ.gs @kanimiso_gs

アイスブレイクタイム、朝活で4:30に起きている方がいた。す、すごい...! #ノンプロ研

2021-06-16 20:09:43
ずーみん @nowgorigori

FIZZBUZZで成長してない問題w めちゃくちゃわかります。。。 反省しかない。w #ノンプロ研 #VBA講座

2021-06-16 20:10:08
かにみそ.gs @kanimiso_gs

宿題の他の人の回答みれるの、すごく勉強になりますよね~! #ノンプロ研 #VBA講座

2021-06-16 20:10:45
ずーみん @nowgorigori

縦列と横列をforで回す時、カウンタ変数をi,jではなくr(row),c(column)で書いてみるとわかりやすい! 確かに!これは使えるな! #ノンプロ研

2021-06-16 20:12:27
alice @alice37308108

宿題は5~10分考えてもわからないときは ・調べてみるのもOK ・Slackで聞いてみるのもOK ノンプロ研を活用してください😊 #ノンプロ研

2021-06-16 20:12:30
alice @alice37308108

きのぴぃさんのSlackのブックマークの設定 かなり便利ですね!ありがとうございます😃 #ノンプロ研

2021-06-16 20:15:36
alice @alice37308108

これから意識するポイント⇒構文どおり書く ・For文、今日出てくる構文など ・いろんな書き方があるけど、知らないと🤔?となるので複数の書き方があることを知るのも大事 ・自分で書くときは一貫性を持って書く #ノンプロ研

2021-06-16 20:18:22
alice @alice37308108

Subプロシージャ →戻り値のないプロシージャ #ノンプロ研

2021-06-16 20:21:04
alice @alice37308108

プログラムは一本道をたどる🛣️ #ノンプロ研

2021-06-16 20:22:08
alice @alice37308108

コメントしたいときは「'」を入れるとコメントアウトできる →メモをすることができます ショートカットキーを設定すると一度にコメントアウトすることができる #ノンプロ研

2021-06-16 20:26:06
alice @alice37308108

ステップ実行「F8」 →一行ずつ実行することができる →わりと便利なので活用してみてください😀 #ノンプロ研

2021-06-16 20:29:50
根岸 @2a9SouLnhptnIqG

Subプロシージャを呼び出すときは Call プロシージャ名 (Callを付けることを推進しています。) #ノンプロ研

2021-06-16 20:32:38
alice @alice37308108

【引数とパラメータ】 →引数の値がパラメータに渡される →引数は数字でも変数でもOK Call プロシージャ名(引数1, …) Sub プロシージャ名(パラメータ1 As 型,…) 引数1とパラメータ1はそれぞれ対応している #ノンプロ研

2021-06-16 20:32:42
alice @alice37308108

プロシージャを呼び出す方法 ・Callを付ける →Call プロシージャ名(引数...) ・Callを付けない →プロシージャ名 引数... Subプロシージャを呼び出だすときはcallを付けた方が自分で呼び出しているとわかるので書くのがおススメ #ノンプロ研

2021-06-16 20:37:57
根岸 @2a9SouLnhptnIqG

引数の渡し方 ByRef(参照渡し) ByValの(値渡し) の2種類がある。 #ノンプロ研

2021-06-16 20:41:07
根岸 @2a9SouLnhptnIqG

引数の渡し方を省略すると ByRef(参照渡し)になるので注意 #ノンプロ研

2021-06-16 20:42:11
根岸 @2a9SouLnhptnIqG

Call Test(x) Sub Test(x as Long) 私も渡す引数名ともらうパラメータ名は同じにしてる #ノンプロ研

2021-06-16 20:44:24
根岸 @2a9SouLnhptnIqG

ByRefとByValの違いはWindowsの「コピー」と「ショートカットの作成」の違いのイメージに近い。 ByRef(参照渡し):ショートカットの作成 ByValの(値渡し):コピー #ノンプロ研

2021-06-16 20:50:16
alice @alice37308108

【参照渡し ByRef(省略可能)】 →メモリの参照を渡す 何を渡しているの🤔? 同じメモリアドレスの番地をプロシージャに渡している (例:メモリアドレスの001を渡す) 結果的には同じメモリアドレスを見に行く 何も書かないと参照渡しになる #ノンプロ研

2021-06-16 20:54:15
alice @alice37308108

【値渡し ByVal】 →値を渡してメモリは別に用意 他のメモリアドレスが作成されて値が複製される 値渡しのほうが誤作動も起きないでデバッグもしづらいので基本的には値渡しの方が良い #ノンプロ研

2021-06-16 20:54:15
根岸 @2a9SouLnhptnIqG

戻り値が複数必要な場合にByRefを使っています。 それ以外の場合は基本的にByValを使っています。 #ノンプロ研

2021-06-16 20:58:05
ずーみん @nowgorigori

戻り値とかに関してはVBAのがなんとなくわかりやすいのかな? #ノンプロ研

2021-06-16 21:01:03