以下は、私たちはユーザー定義関数を作成するエクセルVBAでプログラムを見ていきます。 Excelは、機能の大規模なコレクションを持っています。ほとんどの状況では、これらの機能は、仕事を得るために十分です。ない場合は、独自の機能と呼ばれるユーザー定義関数またはカスタムExcelの関数を作成することができます。あなただけの任意の他のExcel関数と同様にユーザー定義関数にアクセスすることができます。

我々は、ランダムに選択された範囲の偶数の合計を見つけSUMEVENNUMBERSという関数を作成します。

状況:

User Defined Function in Excel VBA

ユーザ定義関数は、モジュール内に配置される必要があります。

  1. Visual Basicエディターおよび挿入モジュール]をクリックします。

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

Function SUMEVENNUMBERS(rng As Range)

私たちの関数の名前はSUMEVENNUMBERSです。括弧の間の部分は、我々は、入力としてエクセルVBAに範囲を与えることを意味します。私達は私達の範囲RNGに名前を付けていますが、任意の名前を使用することができます。

3.次に、我々は、Rangeオブジェクトを宣言し、それのセルを呼び出します。

Dim cell As Range

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

For Each cell In rng

Next cell

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

5.次に、我々はそれが偶数かどうか、この範囲内の各値をチェックします。私たちは、このためのMod演算子を使用します。 Modの演算子は、除算の余りを返します。 2 1. 7を与えるMOD 7 SO 2(3回)で除算し、これを言って1の残りを与えるためには、数が偶数であるか否かをチェックすることは容易です。 2で割った数の余りが0である場合にのみ、その数は偶数です。 8 MOD 2 8が2ちょうど4倍で割った、従って8偶数である、0を与えます。次の各ループの場合に文の場合は、以下を追加します。

If cell.Value Mod 2 = 0 Then

End If

この文は真である6.場合にのみ、我々はSUMEVENNUMBERSに値を追加します。

Ifステートメントに次のコード行を追加します。

SUMEVENNUMBERS = SUMEVENNUMBERS + cell.Value
  1. Doが(ループの外)機能を終了することを忘れませんで。

End Function

8.今、あなたは、ランダムに選択した範囲の偶数の合計を見つけるために、単に他のExcel関数と同じように、この機能を使用することができます。

結果:

User Defined Function Result

よくやった!これは、Excel VBAでユーザー定義関数はどのように簡単です。

注意:この関数は、このワークブックでのみ使用可能です。