スタイル

変数が多くなったらクラスを使う

実は、クラスモジュールは、今まで使ったことがありませんでした。
「使わなくてもできないことは何もない」からです。

ところが、先日、ある方が使っているのを見て、「なんかカッコいいな~」と思ってしまったのです。そもそも「クラスモジュールとは何なのか」がいまだに分かっていないのですが、とりあえず使ってみることにしました。

クラスモジュールの使い方の説明の中で、私にとって一番わかりやすかったのは、こちらです。

この記事に書かれていることだけをたよりに、現在、逐次バージョンアップを進めている「公用文テンプレート」でクラスモジュールを使ってみました。

1つは、設定用の定数の配列を作るクラスです。
VBAでは配列を定数で宣言できないので、このマクロでは「,」で区切った文字列で定数を宣言して、標準モジュールの各プロシージャで配列に変換して使っています。
複数の配列変数を処理する部分が標準モジュールのあちこちに分散している状態でしたので、それを一つのクラスモジュールにまとめてみました。

もう1つは、右余白を計算するクラスです。
このマクロでは、ページの設定を行う際に、各行の字送りの乱れをなくすため、字送りの値に応じた右余白を計算して設定するようになっています。
この計算式には、たくさんの変数を必要としているため、切り離して標準モジュールをスッキリさせました。

現状では、「格段に読みやすくなった」とまでは思えないのですが、使わないよりはましになったと思います。
今後、もっと、クラスモジュールをしっかりと理解できるようになったら、より効果的な使い方ができるようになるかも知れません。

とりあえず、現時点においては、「変数が多くなったらクラスを使う」を私のスタイルに加えておこうと思います。

コメント

タイトルとURLをコピーしました