ワークシートで使えるオリジナル関数を作るには(その1)ーExcel VBA Tips

Excel VBA Tips集-5

ワークシートで普通に使えるオリジナル関数の作り方

オリジナル関数を作るにはfunctionプロシージャを用います。今回はごく簡単なオリジナル関数を作成してみましょう。なんの役にも立たない関数ではありますが、入力した値を2倍する関数を作りながら、オリジナル関数の作り方の初歩をご紹介できればと思います。まずはサンプルコードを見てみましょう。

オリジナル関数「doubleNum()」のサンプルコード

まずはfunctionプロシージャーの書式を解説しますね。

Function 関数名(引数 As データ型) As 戻り値のデータ型
        処理
        関数名 = 戻り値
End Function

引数とは関数に渡す値のことです。例えば「=SUM(●)」の「●」に相当する部分です。戻り値とは最終的に関数が返す値のことです。今回のdoubleNum()関数では整数型(Integer型)の引数をとり、その数値を2倍した結果を戻り値として返します。整数の2倍ですから、もちろん戻り値も整数型(Integer型)です。ちなみに「Integer」は「いんてじゃー」と発音します。

また戻り値(処理の結果)を返すには、「関数名 = 戻り値」という風に書きます。

尚、変数とは数値や文字列などの値を入れておく箱のようなものです。変数を使うには、

Dim 変数名 As データ型

と書きます。このような書き方を変数の宣言と呼びます。要は、「~のデータ型の変数を使いますので、どうかよろしく!」と予め断っておくということです。

上記の変数の宣言は、「整数型の<result>という変数を使いますよ」という予告です。

ここで作成したなんの役にも立たない関数「doubleNum()」はもちろん普通のExcelの画面上で、SUM()関数やAverage()関数のように使えます。今回はダメダメ関数なのであまり意味がありませんが、「こういう関数があったら便利なんだけどExcelにはないんだよなー」といった場合、Functionプロシージャーを用いれば、自分独自の便利関数を開発することができます。

ちなみにワークシート上の数式バーで、「=doubleNum(30)」と書けば、ちゃんと「60」と、2倍された値が返ってきます。

 

使える!Excel VBA Tips集TOPに戻る

 

[AD]自分のペースでゆったり学ぶ Excel VBA

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA