クラスは、オブジェクトの正式な定義です。このクラスは、プログラミング中にオブジェクトを作成するためのテンプレートであり、オブジェクトの動作を決定するプロパティとメソッドを定義します。クラスモジュールはOffice97の新機能です。

クラスモジュールを使用すると、独自のオブジェクトを作成できます。これらのオブジェクトは、組み込みオブジェクトのようなプロパティとメソッドを持つことができ、必要に応じてオブジェクトの複数のコピーを作成できます。

プログラマーは以前にクラスモジュールなしで管理しており、クラスモジュールを使用する理由は、しばらくの間クラスモジュールを使用する前に明らかにならない場合があります。

クラスモジュールを使用する場合の利点のいくつかを次に示します。

  • クラスモジュールを使用すると、高度なプロセス用に複雑なソースコードを分離できます。

これにより、他の人がプロセスの実行方法を理解していなくてもソースコードを簡単に使用できるようになります。

  • クラスモジュールは、コードをより小さく、より管理しやすい部分に分割することにより、複雑なタスクの開発を容易にします。これは以前は可能でしたが、クラスモジュールを使用すると、コードを通常のプロシージャから分離する必要があり、関数の分離がより明確になります。

  • クラスモジュールを使用すると、再利用可能なコンポーネントを作成できます。クラスとそれらを使用するプロシージャは明らかに分離されているため、クラスには、異なるプロジェクト間で簡単に共有できる独立したコードコンポーネントが含まれています。

  • クラスモジュールは他のコンポーネントテクノロジの基盤であり、VisualBasicを使用してXオートメーションサーバーとActiveXコントロールを作成できます。

クラスモジュールを使用する場合

クラスモジュールを使用する場合の例を次に示します。

  • データベース管理クラスモジュールを使用すると、VBAを使用してデータベースを管理できるオブジェクトを簡単に作成できます。データベーステーブルの読み取りまたは書き込み用のコードを含むクラスを作成できます。

このクラスは、ユーザーがデータの出所と方法を知らなくても、マクロで使用できます。

  • APIプロシージャのラップクラスモジュールを使用すると、マクロでWindowsAPI関数を簡単に使用できます。

API関数をクラスモジュールでラップすると、Windowsのより複雑な関数にあまり詳しくない人でも開発が容易になります。

  • テキストファイルの読み取りと書き込みの管理これはそれほど複雑ではありませんが、VBAでこれがどのように行われるかを誰が覚えていますか?

テキストファイルへの低レベルの読み取りと書き込みを管理するクラスを作成することにより、クラスのプロパティとメソッドをマクロで簡単に使用できます。

クラスモジュールを使用して、レジストリ管理を簡素化し、アプリケーション内のオブジェクトに新しいプロパティとメソッドを作成することもできます。