最新閲覧日:

関数についてです。
例えば、A1からE3まで任意の数字をいれます。その中から検索条件に合った数字の個数を求めたいのですが、その条件に例えば数字を赤字にしたものだけの個数を求めるやり方を教えてほしいのです。

数字の書式設定は標準または数値です。その検索条件には、例えば“2”なら
2の黒字が何個、赤字が何個というような感じに検索したいんです。

A 回答 (3件)

#212717とはちょっと違う質問のようですね。



>関数についてです
とあるので、ユーザー定義関数を作ってみました。
  =colorCellCount(A1:E3,2,3) のように使います。

引数は、『検索範囲、検索する値、検索する色』の順です。
上ではA1:E3の赤色(赤はコード=3)の値2の個数を数えます。
黒は『1』を指定します。初期値で黒になっているセルも黒としてカウントします。
  =colorCellCount(A1:E3,2,1) 2の黒のカウント
  =colorCellCount(A1:E3,2,3) 2の赤のカウント になります。
値を返れば再計算をしますが、色を変えただけの場合は再計算して下さい。
当然、他の色も使えます。色を変える操作をマクロ記録してみれば、色と数値の対応も分かるでしょう。
ご参考に。

ツール→マクロ→Visual Basic Editor でVBE画面に移り、
挿入→標準モジュールで標準モジュールを挿入し、そこに下のマクロを貼り付けます。

↓ここから
Public Function colorCellCount(schRg As Range, schV As Double, colIdx As Variant)
  Dim cot As Double '検索に合致した個数
  Dim rg As Range 'セル

  Application.Volatile '自動再計算関数にする

  For Each rg In schRg
    '値の一致を調べる
    If rg.Value = schV Then
      '色の一致を調べる(フォントの色)
      If rg.Font.ColorIndex = colIdx Then
        cot = cot + 1
      End If
      '黒(colIdx=1)を指定している場合は『自動指定』の個数も加える
      If colIdx = 1 Then
        If rg.Font.ColorIndex = xlColorIndexAutomatic Then
          cot = cot + 1
        End If
      End If
    End If
  Next
  colorCellCount = cot
End Function
    • good
    • 0

色付セルの集計(エクセル)


http://oshiete1.goo.ne.jp/kotaeru.php3?q=212717
エクセルの技
http://www2.odn.ne.jp/excel/waza/

参考になりそうな所を見繕いました
参考になれば幸いです
    • good
    • 0

エクセル関数で色の取得は、VBAでないと出来ません。


VBAの表現方法は、参考URLを参照して下さい。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード


このQ&Aを見た人がよく見るQ&A

このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ