Розмір відео: 1280 X 720853 X 480640 X 360
Показувати елементи керування програвачем
Автоматичне відтворення
Автоповтор
データを構造体の配列に読み込んで複数のシートのセルに振り分けるといのを最近作ったんですが、、なるほど クラスモジュールにしておけば、その中でシートに書き込むというような処理にできて、メインのループがある標準モジュールがすっきりしたわけですね。
コメントありがとうございます!はい、そのような感じですね。結果的にコードが減らせるわけではないのですが、要所、要所でしっかり締めができるみたいなイメージですかね。「クラスにするとスペシャルなことができる」と思っていらっしゃる方にとってはメリット幅小さーになると思うのですが、この辺が地味に効いてくるのですよね(^^)引き続きましてご視聴よろしくお願い致します。
初めまして。VBAでのクラスモジュールの必要性を説明するというのはむずかしいですよね。きちんと学習している方であればVBAプログラミングのスタイルも 手続き型→構造型→オブジェクト指向といった感じでその技術的要望に従って変わっていくと思うのですよね。単にエクセルシートにある数字を読み書きだけじゃなくて、スピードを得たりデータ変形のために配列に格納するようになっていきます。やがて配列だけでやるのは不便だからcollectionやハッシュを使うようにもなっていきます。再利用性を高めたいとか拡張性を高めたいとかいろいろな要件に挑戦し続けると様々な技術を習得せざるを得なくなっていってその先にクラスモジュールの便利さが待ってるような気がします。逆に言うと現状に満足できているのであればクラスモジュールのことなんて考える必要性さえないかもしれませんね
コメントありがとうございます!おっしゃるように現状維持でOKな方々が大半かと思います。「プログラム書いててもっと楽をしたい、そんな方法はないか?」こういうマインドでも先に進めるとか思っております^^;後は興味がある人が先に進める道かもですね。引き続きましてご視聴お願いいたします。
VBA勉強してもうすぐ1年くらいになりそうですが、クラスはなるべく積極的に使うようにしています自分がクラスモジュールを使う一番の理由は登録できるマクロを限定したいからですね標準モジュールだとPrivateで宣言してないSubプロシージャは全てマクロとして登録できてしまうので、開発側としてはやってほしくないことをユーザ側でできてしまうことは個人的にまずいかなと思ってますこの動画でいうところの「意識しておくべきことが減らせる」に該当しますねユーザーフォームを介して実行したいマクロや、シートモジュールにコードを書きたい場合はクラスモジュールがどちゃくそ便利だと思ってます
コメントありがとうございます!VBA1年でクラスとはめちゃくちゃ高速です。(何か他の言語経験をお持ちかですかね)クラスにすると処理を「閉じ込められる」というのは便利ですよね。コメ主さんとは少し違うかもしれませんが、私の場合「他のモジュールが何をしているのか、今変数〇〇はどんな値を持った状態か」などが対象のコードにノイズとして入ってくるのを防ぐ役割もあるかと思っています。クラスはそう考えると便利ですよね(^^)引き続きましてご視聴よろしくお願い致します!
データを構造体の配列に読み込んで複数のシートのセルに振り分けるといのを最近作ったんですが、、
なるほど クラスモジュールにしておけば、その中でシートに書き込むというような処理にできて、メインのループがある標準モジュールがすっきりしたわけですね。
コメントありがとうございます!
はい、そのような感じですね。
結果的にコードが減らせるわけではないのですが、
要所、要所でしっかり締めができるみたいなイメージですかね。
「クラスにするとスペシャルなことができる」と思っていらっしゃる方にとっては
メリット幅小さーになると思うのですが、この辺が地味に効いてくるのですよね(^^)
引き続きましてご視聴よろしくお願い致します。
初めまして。
VBAでのクラスモジュールの必要性を説明するというのはむずかしいですよね。
きちんと学習している方であればVBAプログラミングのスタイルも
手続き型→構造型→オブジェクト指向といった感じで
その技術的要望に従って変わっていくと思うのですよね。
単にエクセルシートにある数字を読み書きだけじゃなくて、
スピードを得たりデータ変形のために配列に格納するようになっていきます。
やがて配列だけでやるのは不便だからcollectionやハッシュを使うようにもなっていきます。
再利用性を高めたいとか拡張性を高めたいとかいろいろな要件に挑戦し続けると
様々な技術を習得せざるを得なくなっていってその先にクラスモジュールの便利さが待ってるような気がします。
逆に言うと現状に満足できているのであればクラスモジュールのことなんて考える必要性さえないかもしれませんね
コメントありがとうございます!
おっしゃるように現状維持でOKな方々が大半かと思います。
「プログラム書いててもっと楽をしたい、そんな方法はないか?」
こういうマインドでも先に進めるとか思っております^^;
後は興味がある人が先に進める道かもですね。
引き続きましてご視聴お願いいたします。
VBA勉強してもうすぐ1年くらいになりそうですが、クラスはなるべく積極的に使うようにしています
自分がクラスモジュールを使う一番の理由は登録できるマクロを限定したいからですね
標準モジュールだとPrivateで宣言してないSubプロシージャは全てマクロとして登録できてしまうので、開発側としてはやってほしくないことをユーザ側でできてしまうことは個人的にまずいかなと思ってます
この動画でいうところの「意識しておくべきことが減らせる」に該当しますね
ユーザーフォームを介して実行したいマクロや、シートモジュールにコードを書きたい場合はクラスモジュールがどちゃくそ便利だと思ってます
コメントありがとうございます!
VBA1年でクラスとはめちゃくちゃ高速です。
(何か他の言語経験をお持ちかですかね)
クラスにすると処理を「閉じ込められる」というのは便利ですよね。
コメ主さんとは少し違うかもしれませんが、
私の場合
「他のモジュールが何をしているのか、今変数〇〇はどんな値を持った状態か」などが
対象のコードにノイズとして入ってくるのを防ぐ役割もあるかと思っています。
クラスはそう考えると便利ですよね(^^)
引き続きましてご視聴よろしくお願い致します!