範囲内の特定の数値の倍数をカウントする計算式(等差数列検索)

指定された範囲内で特定の数値の倍数であるセルの数・特定の等差数列に合致するセルをExcelでカウントする計算式を詳しく解説します。※この処理はCOUNTIF関数では実現できません。

基本編:数値の倍数をカウントする

最初に、指定された範囲内で特定の数値の倍数であるセルの数カウントする計算式を解説します。

数式の基本構造

範囲内の特定の数値の倍数をカウントするには、次のExcel配列数式を使用します。

=SUM(--(MOD(範囲, 数値) = 0))

数式の詳細解説

MOD関数の活用

MOD関数は、第一引数に指定された値を第二引数で割った後の余りを返します。この関数を使って、範囲内の各セルの値が特定の数値で割り切れるか(つまり倍数か)をチェックします。

条件のチェック

MOD(範囲, 数値) = 0 この部分で、各セルの値が指定した数値の倍数であるかどうかを評価します。割り切れる場合(余りが0の場合)、条件は真(TRUE)となります。

真偽値から数値への変換

--()ダブル単項マイナス)は、真(TRUE)または偽(FALSE)の配列を1と0の配列に変換します。これにより、真(倍数である)の場合は1、偽(倍数でない)の場合は0と数値化されます。

合計の算出

SUM関数で1の合計を計算します。この合計が、範囲内で指定された数値の倍数であるセルの総数となります。

実用例

例えば、セルA1からA10までにある数値の中で、5の倍数がいくつあるかをカウントする場合、次のように式を設定します。

=SUM(--(MOD(A1:A10, 5) = 0))

応用編:特定の等差数列に合致するセルをカウントする

範囲内のセルが特定の等差数列に適合しているかどうかをカウントする方法を紹介します。

数式の基本構造

特定の等差数列(初項と公差を指定した数列)に合致するセルをカウントするExcelの配列式は次のようになります。

=SUM(--(MOD(範囲 - 初項, 公差) = 0))

数式の詳細解説

MOD関数の利用

MOD関数は、ある数値を別の数値で割った余りを返します。この関数を用いて、範囲内の各セルの値が等差数列の一部であるかどうかを判定します。

等差数列の条件

等差数列は初項と公差によって定義されます。初項から開始して、公差分だけ増えていく数列です。したがって、範囲 - 初項 の結果が公差で割り切れる(余りが0)場合、そのセルの値は等差数列の一部です。

配列数式の実行

MOD(範囲 - 初項, 公差) = 0 は、等差数列の条件を満たすかどうかを評価します。条件が真(TRUE)ならば1、偽(FALSE)ならば0に変換されます。

真偽値から数値への変換と合計

--()ダブル単項マイナス)は真偽値の配列を数値の配列に変換します。最後に、SUM関数で1の合計を計算し、範囲内で条件に合致するセルの数を求めます。

実用例

例えば、A1:A30の範囲にある数値の中で、初項が2で公差が4の等差数列に合致するセルの数をカウントする場合、以下の式を使用します。

=SUM(--(MOD(A1:A30 - 2, 4) = 0))

 

コメント