/ / Excel VBAでのユーザー定義関数

Excel VBAでのユーザー定義関数

以下では、 Excel VBA それは ユーザー定義関数。 Excelには多くの機能があります。ほとんどの場合、これらの機能はジョブを完了させるのに十分です。そうでなければ、ユーザー定義関数と呼ばれる独自の関数を作成するか、 カスタムExcel機能。他のExcel機能と同様に、ユーザー定義関数にアクセスすることができます。

ランダムに選択した範囲の偶数の和を求めるSUMEVENNUMBERSという関数を作成したいとします。

状況:

Excel VBAでのユーザー定義関数

ユーザー定義の関数をモジュールに配置する必要があります。

1. Visual Basic Editorを開き、Insert、Moduleをクリックします。

2.次のコード行を追加します。

Function SUMEVENNUMBERS(rng As Range)

関数の名前はSUMEVENNUMBERSです。角括弧の間の部分は、Excel VBAに入力として範囲を与えることを意味します。私たちは範囲の名前をrngとしますが、任意の名前を使用できます。

3.次に、Rangeオブジェクトを宣言し、それをセルと呼ぶ。

Dim cell As Range

4.ランダムに選択された範囲内の各セルをチェックしたい(この範囲は任意のサイズでよい)。 Excel VBAでは、For Each Nextループを使用することができます。次のコード行を追加します。

For Each cell In rng

Next cell

注:ここではセルがランダムに選択されていますが、任意の名前を使用できます。

5。 次に、この範囲の各値が偶数であるかどうかを調べます。これにはMod演算子を使用します。 Mod演算子は、除算の残りの部分を返します。したがって、7 mod 2は1になります。7を2で割って(3回)、1の余りを与えます。これを言って、数が等しいかどうかを確認するのは簡単です。 2で割った残りの数が0の場合のみ、その数は偶数です。 8 mod 2は0を与え、8を2で正確に4回除算するので、8は偶数です。 For Each Nextループに次のIf文を追加します。

If cell.Value Mod 2 = 0 Then

End If

6.このステートメントがtrueの場合のみ、SUMEVENNUMBERSに値を追加します。 Ifステートメントに次のコード行を追加します。

SUMEVENNUMBERS = SUMEVENNUMBERS + cell.Value

7.機能を終了することを忘れないでください(ループ外)。

End Function

8.ここで、この関数を他のExcel関数と同様に使用して、ランダムに選択した範囲の偶数の合計を見つけることができます。

結果:

ユーザー定義関数の結果

よくやった! Excel VBAでどのように簡単にユーザー定義関数を使用できるかは、注意してください。この関数は、このワークブックでのみ使用できます。

また読む: