Excel

【Excel】エクセルでマイナスのみの個数をカウントする(0以下の数だけ数える(負の数):関数:マクロ)方法

当サイトでは記事内に広告を含みます
技術ブログ特化メルマガはこちら

この記事ではエクセルでマイナスのみの個数をカウントする(0以下の数だけ数える)方法について解説していきます。

ポイントは、以下の通りです。

・COUNTIF関数を使ってマイナスの値だけを数える

・マクロを使って自動化する

エクセル操作は1つ1つ追っていけば必ずうまくできるため、ぜひ本記事を参考にスキルアップにつなげてくださいませ♪

エクセルでマイナスのみの個数をカウントする方法【COUNTIF関数】

それでは以下のサンプルを用いてCOUNTIF関数を使ったマイナスのみの個数のカウント方法を確認していきます。

B11セルに以下の数式を入力します。

=COUNTIF(B2:B9,”<=0″)

この数式の意味は、B2からB9までのセルの中で、0以下の値の個数を数えるということです。

“<=0″は、0以下という条件を表しています。

B2:B9の範囲内で、この条件に当てはまるセルの数が求められます。

数式を入力したらENTERで処理を確定させます。

これでマイナスの値の個数がカウントされた結果が表示されます。

COUNTIF関数を使えば、条件に合致する値の個数を簡単に求められるのです。

プラスの値を除外したい時などに便利ですね。

エクセルでマイナスのみの個数をカウントする方法【SUMPRODUCT関数】

続いては別の関数を使ったマイナスのみの個数のカウント方法を確認していきます。

COUNTIF以外にも、SUMPRODUCT関数とNオペランドを組み合わせることでマイナスのみの個数を求めることができます。

B11セルに以下の数式を入力しましょう。

=SUMPRODUCT(–(B2:B9<0))

(B2:B9<0)の部分で、各セルが0より小さいかどうかを判定しています。

0より小さければTRUE(-1)、そうでなければFALSE(0)が返ります。

ダブルマイナス「–」を付けることで、TRUEが1、FALSEが0に変換されます。

これをSUMPRODUCT関数で合計することで、TRUEの数、つまりマイナスの値の個数を求めることができるのです。

数式を入力したらENTERで処理を確定させてください。COUNTIF関数と同じ結果が得られるはずです。

エクセルでマイナスのみの個数をカウントする方法【マクロ使用】

最後はマクロを使ってマイナスのみの個数を求める方法を確認していきます。

まずはマクロを以下のように記述します。



Sub CountNegative()
    Dim lastRow As Long
    Dim negativeCount As Long
    
    lastRow = Cells(Rows.Count, 1).End(xlUp).Row
    
    For i = 2 To lastRow
        If Cells(i, 2).Value <= 0 Then
            negativeCount = negativeCount + 1
        End If
    Next i
    
    Cells(lastRow + 1, 1).Value = "マイナスの個数"
    Cells(lastRow + 1, 2).Value = negativeCount
End Sub

このマクロでは、以下のような処理を行っています。

1. lastRow変数で、データの最終行を取得
2. negativeCount変数で、マイナスの値の個数を計算
3. 2行目からlastRow行目まで繰り返し処理
4. B列の値が0以下なら、negativeCountに1を加算
5. 最終行の下の行に「マイナスの個数」と結果を出力

マクロを実行すると、COUNTIF関数やSUMPRODUCT関数と同じ結果を一発で求めることができます。

大量のデータを扱う場合や、定期的に同じ処理を行う必要がある場合は、マクロを使うのが効率的ですね。

まとめ エクセルでマイナスのみの個数を求めるの方法

以上、エクセルでマイナスのみの個数を求める3つの方法をご紹介しました。

用途に応じて使い分けることで、エクセル作業の幅が広がるはずです。ぜひ試してみてくださいね。

RELATED POST