
No.2ベストアンサー
- 回答日時:
ワークシート関数ではセルの「色番号」は取得できません。
マクロ(ユーザ定義関数)が必要です。
ユーザ定義関数で「背景色が赤で、文字列が○のセル」を数えることも可能ですが、質問は「例えば」で書かれていそうなので、あまりきっちりとマクロを書くと修正が必要になりそうです。
そこで汎用的に使えそうな「手抜きバージョン」で回答します。
まず以下のマクロをALT+F11でVBE画面を開き、左上のVBA Projectでシート名を右クリックし「挿入」→「標準モジュール」で表示される画面に貼り付けて下さい。
Function Cidx(ByVal trg As Range) As Integer
With trg.Cells(1, 1).Interior
If .ColorIndex = xlNone Then
Cidx = 0
Else
Cidx = .ColorIndex
End If
End With
End Function
次にVBE画面を閉じてワークシート画面に戻り、
=Cidx(A1)
の式を1行目の空いている列(例えばB列)に入力し、30行分下にコピーします。するとA列のセルの「色番号」が表示されます(背景色なしは0)
ただしセルに値を入力した後で背景色を変更した場合は、ユーザ定義関数の結果は自動的に変わりません。Alt+Ctrl+F9で強制再計算させる必要がありますのでご注意ください
後は別の関数で赤色(色番号=3)で「○」印があるセルをカウントします
=SUMPRODUCT((A1:A30="○")*(B1:B30=3)*1)
ご回答ありがとうございます。
普通の関数では難しいのですね。
マクロは、直接書いたことはありませんが、
ご説明いただいたとおり作業すれば私でもできそうです。
今からチャレンジしてみようと思います。
(ご回答いただいたことに気づかず、色のセルをCOUNTIFの足し算で
ながーい関数を作っておりました。)
ご丁寧かつ分かりやすいご説明、ありがとうございました。
助かりました。
No.1
- 回答日時:
一般機能の関数で色つきセルを数えることはできません。
マクロでも、セルが単純にパレットで塗りつぶされている場合と条件
付き書式で塗りつぶされている場合とで、処理が異なります。
以下は「単純にパレットで塗りつぶされている」場合です。
まず、標準モジュールに以下を記述します。
Function Cnt(Area As Range)
Dim rng
Application.Volatile
For Each rng In Area
If rng.Interior.ColorIndex <> xlNone And rng.Value = "○" Then
Cnt = Cnt + 1
End If
Next
End Function
で、答えを表示したいセルに =Cnt(A1:A30) と入力します。
ご回答ありがとうございました。
関数では難しいのですね。
マクロはあまり使ったことがありませんが、
挑戦したいと思います。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
エクセルで文字色がついているセル数をカウント
Windows Vista・XP
-
エクセル色付きセルを数える
Excel(エクセル)
-
Excel 書式を関数で判断。
Excel(エクセル)
-
4
エクセル・・色の着いたセルの個数を数える関数はある?
Excel(エクセル)
-
5
【Excel】 色の一致するセル数をカウントしたい。
Excel(エクセル)
-
6
条件付書式で色づけしたセルの数をカウントしたい
その他(Microsoft Office)
-
7
エクセル 塗りつぶししたセルの個数をカウントしたい
Excel(エクセル)
-
8
エクセル関数使用で赤色数字をカウントしたい
Windows Vista・XP
-
9
特定のセル(色付き、色なし、色付き文字あり、色なし文字あり)だけを数える関数はありますか?
Word(ワード)
-
10
エクセルでセルの色番号を表示する方法
Excel(エクセル)
-
11
(EXCEL)CELLの色をカウントする。
Windows Me・NT・2000
-
12
エクセルでの文字色を数える関数に関して。。。
その他(Microsoft Office)
-
13
エクセルで特定の色の数字だけ計算させることはできますか?
Excel(エクセル)
-
14
EXCEL 条件書式で反応したものだけCOUNTしたい
Excel(エクセル)
-
15
【Excel】 セルの色での判断はできますか?
Excel(エクセル)
-
16
EXCELで、色つきセルだけカウントしたい
その他(パソコン・スマホ・電化製品)
-
17
色が付いたセルの合計を出したいのですが…
Excel(エクセル)
-
18
エクセルで条件に一致したセルの隣のセルを取得したい
その他(Microsoft Office)
-
19
エクセルで網掛けをしたセルをカウントしたいのですが。
会計ソフト・業務用ソフト
-
20
(Excel)あるセルに文字を入力しただけで、同じブック内のほかのワークシートにも、同じ文字が自動的に入るようにするには?
Excel(エクセル)
関連するQ&A
- 1 Excelについて あるセルに文字が入ったら違うセルに色が付き、 色がついたセルに文字を入力したら色
- 2 Countif関数で検索条件に「C:C」のようにセル範囲を指定するのと同等の処理をする方法について
- 3 Excel、COUNTIF関数の範囲を変えると0になる
- 4 [Excel]COUNTIFの検索範囲条件をセル参照でしたい
- 5 Excel関数: テーブルの複数行列範囲を検索し、複数の該当セルの値をセル位置順に取得したい。
- 6 EXCELの関数でセルに色を設定
- 7 エクセル関数「COUNTIF」の範囲設定の件で
- 8 Excelのcountif関数の検索条件をセルで指定したい
- 9 Excel 関数 COUNTIF の検索条件を他のセルの値にする
- 10 【Excel】条件付設定?関数?セルに色をつけたいのですが・・
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
【Excel】 セルの色での判断は...
-
5
excelの特定のセルの隣のセル指...
-
6
Excelについて(セル内の文字を...
-
7
Excelで、「特定のセル」に入力...
-
8
セルをクリック⇒そのセルに入力...
-
9
ドロップダウンさせるボタンを...
-
10
対象セル内(複数)が埋まった...
-
11
貼り付けで複数セルに貼り付けたい
-
12
VBAでの結合セルのコピー&ペー...
-
13
エクセル 数字の前の「00」を...
-
14
【エクセル】IF関数 Aまたは...
-
15
ピボットテーブルの更新時にエ...
-
16
EXCELで、指定セルにある文字列...
-
17
Excelで数式内の文字色を一部だ...
-
18
エクセルで「コピー領域と貼り...
-
19
複数セルに入力した数字をカン...
-
20
Excelの下側の空行を消したい
おすすめ情報