Excel VBA インタフェースの実装
今回はExcel VBAを使ってインタフェースを実装してみようという話です。
まず図1のように、クラスモジュールに「Animal」と「Neko」というクラスを作ります。
![](https://nekoni-gohan.com/wp-content/uploads/2021/01/09486fd5a94ba164bda8cba70e5de538-3.png)
次に「Animal」クラスをインタフェースとして利用したいので、メソッドと
フィールドのみ記述します。プログラムは図2になります。
![](https://nekoni-gohan.com/wp-content/uploads/2021/01/c488ca4b065adb830dc1e86b1c4a2d3c-2.png)
次にAnimalインタフェースを実装したクラス、「Neko」クラスを作成します。
「Implements Animal」と宣言してあげると、図3のようにプルダウンより
実装するメソッドを選べるようになります。
![](https://nekoni-gohan.com/wp-content/uploads/2021/01/301fca925501f97000a43f43510eaec3-1024x128.png)
そして図4のように「Neko」クラスでインタフェースを実装してあげます。
![](https://nekoni-gohan.com/wp-content/uploads/2021/01/984af3ad5b30b23199799d48edac68ec-1.png)
そして最後にポリモーフィズムを実現してみます。標準モジュールで
インスタンスを生成して、「Animal」型のオブジェクトに「new Neko」とすると、Nekoインスタンスへの参照をあたかもAnimalのように扱えます。
つまりAnimalオブジェクトでNekoのメソッドを実行することが出来ます。
プログラムは図5になります。
![](https://nekoni-gohan.com/wp-content/uploads/2021/01/a93e25c3f4403cdc6ac5fe6aefd3ca0a.png)
これで、ネコの動作がメッセージボックスに表示されます。