- KotorinChunChun
- 8360
- 15
- 1
- 0
VBAのプロパティ難しい
事例1
#パーフェクトExcelVBA 勉強中 F8キーのステップ実行のみでは自分の頭が追いつかないので、まとめノートを作ることにした。本だとスペースの加減で書き込みしにくいけど、A4サイズのルーズリーフならいろいろ書けて見やすいかも。解釈あってるのか若干不安ですが、学習の参考になれば嬉しい。 pic.twitter.com/jKD8wwJjM4
2020-02-24 15:30:29テキストP173 7行目 プロシージャ名name がプロパティー名となります。 ってどういう意味?firstName_ がプロパティ名ではない?! セルのフォントの色を設定する時でいうと何が何に相当するのん?!?やっぱり謎謎。
2020-02-24 15:53:16@_reime ご教授ありがとうございます😊 テキストを読み返したり、検索してたら よく似た記載がありました↓ 2種類のプロパティの目的が異なる事に気付きました。 シートモジュール内で実際に値を持つのはfirstName_ 、他のモジュールからアクセスするために使うのがFirstName。 tonari-it.com/excel-vba-prop…
2020-02-24 17:22:35事例2
うぅ…😭😭 難解だ…。。。 いつPropertyプロシージャから先に進めるんだろう…。 pic.twitter.com/iLaQ5hWlge
2020-02-23 23:23:39@ichina970803 Setプロパティは引数で値を受け取る関数と考えておけば大丈夫です。Getプロパティは何か値を返す関数と同じ。難しく考えなくて大丈夫です。
2020-02-24 00:16:44@chan_no_ta そうしようかとも思ったんですがLet に関しては動きを見ながら何となく分かったのでこのまま飛ばすのも悔しくててん
2020-02-24 16:22:54@ichina970803 わたしも難易度が高いと感じて、読むスピードが遅くなりました。 けっきょく、理解も半分のまま読み進めました。
2020-02-23 23:28:27@ichina970803 なんのために使うのかって感じですね。「隠蔽」とか「カプセル化」って言われてもねえ…
2020-02-24 16:26:39@amurorei55 せっかくシートモジュールに書くのですし、プライベートプロパティにとらわれず、セルを読み書きしてはどうでしょう? 例えば、 Property Get 設定値() As String 設定値 = Me.Range("A1").Value End Property なんかは実務でもよく使いますし。
2020-02-24 23:09:48以下、議論等
プライベート変数=プライベートプロパティは呼び方がおかしいのではないか
ちょっ良く分からないツイートがちらほらと。 プライベート変数をプライベートプロパティと呼んでいるのでしょうか? えーと、なぜそういうことになったのでしょうか?
2020-02-24 23:40:28VBAでモジュールレベル変数のことをプロパティというのは、ちょっと抵抗がありますね。 もっとも、クラスモジュールのモジュールレベル変数ならプロパティと言いたくなるときもあります。 ただ、プロパティプロシージャもあるし、「プロパティ」という呼称は、ちょっとややこしい気もします。
2020-02-25 10:34:26@_reime 意味は分かりますが、、、 わざわざ分かりづらくする使い方をしなくても良いとは思います。
2020-02-25 00:16:51@yamaoka_ss こちらの方がまとめたノートにプライベート変数を「プライベートプロパティ」と呼ぶ記述があって、本人もその辺りで混乱されているようでした。 twitter.com/amurorei55/sta…
2020-02-25 00:18:07@yamaoka_ss で、今パーフェクトVBA見たら確かにオブジェクトモジュールのプライベート変数を「プライベートプロパティ」って呼んでいるので、 プライベート変数をプライベートプロパティと呼ぶのは一般的なのかな?と思い呟きました。 pic.twitter.com/ylTJUz8Y34
2020-02-25 00:21:57(最初に紹介したツイート)