2013/10/26

【VBA】Excelでユーザー定義関数を使う


 Excelには最初からあるExcel(エクセル)関数が複数ある。


 しかし、用意されている関数には限界があり、それを使おうとすると

=IF(xx = yy, IF(xx = zz, SUM(A1:A10), AVG(A1:A10)), IF(COUNTIF(A1:A10, "@") > 0 ・・・・・)

みたいな何やってるのか、メンテもできないような数式になってしまう。


それを解消するためにExcelにはユーザー定義関数がある。




ユーザー定義関数を作る


  1. [Alt]+[F11]でVBE(VisualBasicEditor)を起動する。
  2. プロジェクトペインで、右クリック→「挿入」→「標準モジュール」でモジュールを作成
  3. Functionプロシージャを作成


こんな感じで、あとはいつも通りFunctionプロシージャを作成すればOK



ユーザー定義関数を使う



 これまた普通のExcel関数を使いように数式に「=hogeMethod(A1)」のように書けば、
なんらかの戻り値を表示することができる。





以上

0 件のコメント :

コメントを投稿