[[20041125102159]] 『塗りつぶしたセルをカウント』(P) >>BOT

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『塗りつぶしたセルをカウント』(P)

初めて登録させていただきます。塗りつぶししてあるセルをカウントすることはできますか?
勤務報告書において、土日・及びその他の社休日に塗りつぶしをしており、土日は自動的に塗りつぶしになるように「条件付き書式」で設定しています。
その他の社休日は、自分で指定して塗りつぶします。
塗りつぶしという条件のみのセルをカウントすることは可能でしょうか。


 この学校に
 
Color関数(関数、アドイン)
色の付いたセルの合計やその数を求めることができます。
http://www.excel.studio-kazu.jp/DL/UFClr/UFClr.html
 
ってのがあるみたいですよ。
これ使うと出来るんじゃないかしら。
(ご近所PG)私は使った事は無いけど…失礼


 もう一つの方法として「自分で設定して塗りつぶす」のではなく、作業列に何か(例えば 1 )を
 入力することによってそこを参照した「条件付き書式」で色が付くようにすれば、
 作業列をカウント=色付きセルのカウントになりますね。(純丸)


下記でどうでしょうか。

 調査する範囲を選択(ドラッグして反転色にした状態)でマクロを実行してください。 色付きセル数を表示します。(なお)

Sub test2()

                 n = 0

                 For Each c In Selection
                 yy = c.Interior.ColorIndex
                 If yy <> xlColorIndexNone Then
                 n = n + 1
                 End If
                 Next

                 MsgBox ("着色セル数は " & n & " です。")

End Sub


 σ(^◇^;)も考えてみました。
標準モジュールに貼り付けて
=MyCol(B3:D10,E5:F9)
こんな感じで使います。
どうでしょうか?
(SoulMan)
Option Explicit
Public Function MyCol(ParamArray MyArea()) As Long
Dim i As Long
Dim C As Range
For i = LBound(MyArea) To UBound(MyArea)
    For Each C In MyArea(i)
        If C.Interior.ColorIndex <> xlNone Then
            MyCol = MyCol + 1
        End If
    Next
Next i
End Function


(P)です。
みなさん、どうもありがとうございました。
助かりました。またなにかありましたら、おじゃまします!


 過去ログの表示がおかしくなるので、改行を修正しました。
 (kazu)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.