• 車種別
  • パーツ
  • 整備手帳
  • ブログ
  • みんカラ+

ぜーたのブログ一覧

2026年07月19日 イイね!

PropertyはオブジェクトでもLetでイケる話

VBAあるあるの代表格として、変数にオブジェクト代入時の「Setの付け忘れ」があると思います。

FunctionのReturnの時とか、引数でCollectionを受け渡す時とか、慣れた人でもウッカリやってしまうアレです。

ところが、オブジェクトでもPropertyから代入する時はLetでもイケてしまう謎現象が起こります。

Property内での代入はSetが必要になってきますが、それを受け取るのはLetでも問題ないのです。

Property LetにオブジェクトをSet無しで渡しても、コンパイルが通ってしまうし、実行エラーにもなりません。

ただし、PropertyがSetになっていたら、オブジェクトを渡す時もSetが必要になりますし、逆にプリミティブ型をSetで渡すなんて事は出来ません。

まぁ、これを何かの役に立てようなんて思うと混乱の元ですので、素直にオブジェクト型はSet、プリミティブ型はLetで統一した方が良さそうです。

.NETからはオブジェクトもSetが要らないみたいなので楽ちんで良いですが、VBA人はSetを付け忘れないように気を抜いてはいけないのです。
Posted at 2026/07/19 18:08:45 | コメント(0) | トラックバック(0) | プログラミング | 日記
2026年07月17日 イイね!

インターフェースについて理解を深める

インターフェースを利用すれば、引数やメソッドの実装が保証されるので、コレクションに必要なクラスを全て代入してしまえば、For eachで回せる訳ですね。

考え方としては、インターフェースは予め設定しておくもので、後から追加するものではないという事ですね。

ある程度の規模のマクロになると、確かにインターフェースを利用した方が「簡単になる」と思います。

サブルーチンを作れば共通の処理はまとめられますが、インターフェースを実装すれば共通ではない処理をまとめられますね。

使い道は沢山あるはずなんです。
Posted at 2026/07/18 00:00:52 | コメント(0) | トラックバック(0) | プログラミング | 日記
2026年07月09日 イイね!

汎用性の高いクラス

エクセルブックも、ワークシートも、セルも、クラスですが、本当にエクセルを使いこなせる人はなかなかいないので、大半のメソッドやプロパティは使われないまま存在していると思います。

それと同じように、時々しか使わないメンバを沢山持っているけど、いざ必要という時にすぐ使えるような汎用性の高いクラスを作りたいのです。

出来る限り決め打ちせずに、引数を与える事で上手くコントロールして柔軟に対応出来るようにしたいのです。

動けば良いマクロは組もうと思えばいくらでも組めるので、保守性が高く、そして属人化しないように設計する事からやってみたいと思うのです。

勉強し始めた当初は「どうやったら良い」のかを考えてしました。

今思うのは「どうやっても良い」という事です。

本人の意思によって作り始めるものなら、何の制限もありません。

方法は自由です。

VBAは完璧なオブジェクト指向言語ではありませんが、折角クラスモジュールがあるのですから、十分に活用していきたいものです。
Posted at 2026/07/09 22:41:09 | コメント(0) | トラックバック(0) | プログラミング | 日記
2026年07月07日 イイね!

私がしないこと

七夕ですね。

私はここ最近、何かに願いを叶えて貰おうとする事をしていません。

願いが叶う保証は無いし、願いが叶う確率が上がるとも思ってないからです。

何にも頼らない生き方はある意味清々しいと思っています。

何が起きたとしても、自己責任で解決出来るからです。

誰のせいにもしなくて良いからです。

受験に受かりたいなら、勉強する事です。

健康になりたいなら、生活習慣に気を付ける事です。

それを誰かに、もしくは何かに叶えようとしてもらうのは、少し違う気がしています。

水を差すようで申し訳ないです。

私は願いごとが叶う確率は、願った場合も願わなかった場合も変わらないと思っています。

なので願いごとをしている人を見ると、無意味な事をしているように感じる事が多々あります。

少し言いたいのは、何にも一切頼らない生き方は意外と心地良いという事です。

生きてれば、本人にとって良い事も悪い事も起こります。

良い事ばかりを要求するのは人間のエゴです。
Posted at 2026/07/07 22:38:32 | コメント(0) | トラックバック(0) | 浄土真宗 | 日記
2026年06月27日 イイね!

コレクションの罠

VBAで自作したクラスをコレクションに追加した時に、Friendスコープのメンバ変数が何故か取り出せない。(´;ω;`)

でもこれをPublicに変えるといけるんですよね。

AIさんに聞いてみたら、コレクションからそのまま取り出そうとすると内部的にObject型として扱われるそうなんです。

Object型の場合は外部からのアクセス扱いになるので、Publicでないと駄目。

なので、一旦、クラスで型宣言をした変数を作って型を確定させて、そこに取り出したいインデックスのクラスを代入してからだと問題ないとの回答が。

取り出す際のコードを増やしてでもFriendスコープを保つか、もう諦めてPublicスコープにしてしまうかのどっちか選べという訳ですね。

For Eachでも回す時も、型をObjectにしてしまうと同じ現象が起こるそうです。

これAIなかったら延々とネットサーフィンする羽目になってたかもしれないですね。

もうプログラミングするにはAI無しで無理な時代な事で…。

ありがとさん。
Posted at 2026/06/27 21:55:27 | コメント(0) | トラックバック(0) | プログラミング | 日記

プロフィール

「主観だけど、そういう人を見ていると、どうしてもカッコ悪いと思ってしまうので、極力自分自身はそうならないように気を付けたい。」
何シテル?   03/29 01:40
ぜーたと申します。 自動車が好きなのですが、日に日に弄る頻度は下がっています。 私が唯一登録しているSNSがみんカラです。 適当に思う事を呟いてい...
みんカラ新規会員登録

ユーザー内検索

<< 2026/8 >>

      1
2345678
9101112131415
16171819202122
23242526272829
3031     

リンク・クリップ

マツスピ エアロ取付 ② 〜 サイドアンダースカート  
カテゴリ:その他(カテゴリ未設定)
2026/02/18 22:16:01
MAZDASPEEDサイドアンダースカート取り付け 
カテゴリ:その他(カテゴリ未設定)
2026/02/18 22:13:22
マツダスピード サイドスカート取付 
カテゴリ:その他(カテゴリ未設定)
2026/02/17 22:54:42

愛車一覧

マツダ アクセラセダン マツダ アクセラセダン
3代目愛車。 マツダ車のカチッとしたハンドリングに惚れて購入しました! アテンザは大き過 ...
日産 セドリック 日産 セドリック
2代目愛車。 後姿に惚れてY34を購入しました♪ 【ドレスアップの決まり】 ☆純正を壊 ...
その他 自転車 その他 自転車
一人暮らし用のサブ車です。 セドリックを購入して1年半、地元を離れ、一人暮らしを始めまし ...
ダイハツ ソニカ ダイハツ ソニカ
初代愛車。 初めての車という事で、親に勧められるがまま軽自動車を買いました。 当時、車に ...
ヘルプ利用規約サイトマップ
© LY Corporation