ワークシートに埋め込める関数として =SUM(A1:A10) など、Excelが既に持っているものがある。しかし、条件によっていろいろと切り分けたりすると複雑になったりもするし、やりたいことがなかなか実現できなかったりすることもある。


そんな場合、VBAでワークシート関数を作成することが可能である。


手順

1. 標準モジュールを追加する。





2. 追加したモジュールに Public のFunction を任意の名前で作成する。内容もサンプル程度でよい。




3. シートに関数を記載する。




確認

1. 関数の参照先に値を入れる。





この方法、Excel5のVisual Basic ガイドには書いてあったと思うが、それ以降のバージョンでは見ないように思う。

今回のサンプルなので単純に文字列を連結しただけのものであるが、応用すればいろいろできるだろう。

ただし、セルに色を着けたり、ということはできないのでご注意を。