特定の文字色で書かれたセルの数をカウントするには? | EXCELトピックス

スポンサーリンク
スポンサーリンク

特定の色の文字のセルをカウントするには?

Excelでは、特定の文字色が付いたセルの数をカウントすることができます。標準機能だけでは直接カウントできないため、VBAを使用して特定の文字色のセルをカウントする方法も解説します。

方法1: フィルター機能で特定の文字色のセルをカウントする方法

Excelのフィルター機能を使用して特定の色の文字を持つセルをフィルター表示し、セルの個数を確認することができます。

手順

  1. データ範囲を選択

    • 例: A1:A5 を対象に数えたいとします。…①
  2. フィルターを有効化

    • データタブ → フィルター をクリック。
  3. フィルターのカスタマイズ

    • 列のドロップダウンを開き、「色フィルター」を選択
    • カウントしたい色(赤色あれば     )を選択。…②
  4. カウント

    • フィルター適用後、表示される件数を確認。
    • 若しくは、関数で=SUBTOTAL(103, A1:A5)とします。…③
    • 103 は可視セルの数を数えるオプションです。
A1 東京都 神奈川県

B1セルなどに以下を記入

=SUBTOTAL(103, A1:A31)

A2 神奈川県 群馬県 2と表示されます
A3 埼玉県
A4 千葉県
A5 群馬県

複数列の場合(A1:D31を対象にしたい場合)は、全ての列で同様にフィルターを適用し、=SUBTOTAL(103, A1:A31) + SUBTOTAL(103, B1:B31) + SUBTOTAL(103, C1:C31) + SUBTOTAL(103, D1:D31) などとして求めます。

方法2: VBAマクロで特定の文字色のセルをカウントする方法

特定の文字色を持つセルのみをカウントするには、VBAマクロを使用することで、簡単にカウント結果を取得できます。

VBAコード(赤い文字のセルをカウントする)

  1. 「開発」タブから「Visual Basic」をクリックし、VBAエディタを開きます。
  2. 「挿入」→「標準モジュール」を選択し、以下のコードを貼り付けます。保存等の必要はありません。貼り付けたら[X]を押して閉じてしまって構いません。

VBAコード:

Function CountRedText(rng As Range) As Long
    Dim cell As Range
    Dim count As Long
    count = 0
    
    For Each cell In rng
        If cell.Font.Color = RGB(255, 0, 0) Then
            count = count + 1
        End If
    Next cell
    
    CountRedText = count
End Function

VBAコードの説明

  • rng As Range: カウントするセル範囲を指定します。
  • cell.Font.Color = RGB(255, 0, 0): 文字色が赤(RGB 255,0,0)のセルを判定します。
  • CountRedText = count: 指定した範囲内で赤色の文字のセルの数を返します。

Excelの標準フォントカラー(RGB形式)一覧

ExcelのVBAでは、フォントカラーを RGB形式 で指定します。以下は、一般的に使用されるExcelの文字色とそのRGB値の対応表です。

RGB値 RGB値
■ 黒 RGB(0,0,0) ■ 水色 RGB(0,255,255)
■ 白 RGB(255,255,255) ■ 灰色 RGB(128,128,128)
■ 赤 RGB(255,0,0) ■ 濃い灰色 RGB(64,64,64)
■ 青 RGB(0,0,255) ■ 薄い灰色 RGB(192,192,192)
■ 緑 RGB(0,128,0) ■ 濃い青 RGB(0,0,128)
■ 黄色 RGB(255,255,0) ■ 濃い緑 RGB(0,100,0)
■ 紫 RGB(128,0,128) ■ 金色 RGB(255,215,0)
■ オレンジ RGB(255,165,0) ■ 銀色 RGB(192,192,192)
■ ピンク RGB(255,192,203)

使い方

  1. VBAエディタを閉じ、Excelシートに戻ります。
  2. セル範囲(例:A2:A20)に赤色の文字がある場合、カウント結果を表示するセル(例:B2)に次の数式を入力します。

=CountRedText(A2:A20)

以下の表では、A列に赤色の文字を含むセルがあり、B列にカウント結果が表示されます。

A B
1 データ1 赤文字セルの数
2 データ2 =CountRedText(A1:A10)
3 データ3
4 データ4
5 データ5
6 データ6

結果

  • B2セルに、A2~A10の範囲内で赤色の文字のセル数が表示されます。上記の場合は「3」と表示されます。

特定の色で塗りつぶされたセルの数をカウントする方法

特定の色で塗りつぶされたセルの数をカウントするには? | EXCELトピックス
色のついたセルをカウントするには?Excelでは、条件付き書式や手動で色付けされたセルの数をカウントすることができます。標準機能だけでは直接カウントできないため、VBAを使用して特定の色のセルをカウントする方法も解説します。方法1: フィルター機能で色付きセルをカウントする方法Excelのフィルター機能を使用して色付き...

まとめ

Excelで特定の文字色のセルをカウントするには、フィルター機能を使って視覚的に数える方法と、VBAマクロを使って自動カウントする方法があります。VBAマクロを使うことで、大量のデータでも簡単にカウント可能となるため、業務の効率化に役立ちます。

開発タブが表示されていないとき

開発タブを表示させるには? VBAやマクロの設定のために | EXCELトピックス
開発タブが表示されず、VBAやマクロの設定ができない場合の対処法ExcelでVBAやマクロを使用するためには、「開発」タブが必要ですが、初期設定では表示されていません。「開発」タブを表示する設定方法を以下にご紹介します。開発タブを表示させる方法「開発」タブは、Excelのオプション設定で表示することができます。以下の手...