Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Fferi50

    Topikgazda

    válasz KBaj #45375 üzenetére

    Szia!
    Ha nem munkalap függvényként szeretnéd használni, akkor meg lehet oldani a megszámolást anélkül, hogy az eredeti feltételeket figyelni kellene.
    Ahogy korábban írtam, ki kell jelölni a területet és a minta színt, ezután kell elindítani egy makrót.
    Sub CountCcolor1()
    Dim cel As Range, cminta As Range, cter As Range,countcl As Long
    Dim xcolor As Long
    If Selection.Areas.Count <> 2 Then MsgBox "Nem megfelelő a terület kijelölése", vbCritical: Exit Sub
    If Selection.Areas(1).Cells.Count = 1 Then
    Set cminta = Selection.Areas(1): Set cter = Selection.Areas(2)
    Else
    Set cminta = Selection.Areas(2): Set cter = Selection.Areas(1)
    End If
    countcl = 0
    xcolor = cminta.Interior.ColorIndex
    For Each cel In cter.Cells
    If cel.DisplayFormat.Interior.ColorIndex = xcolor Then
    countcl = countcl + 1
    End If
    Next cel
    MsgBox countcl
    End Sub

    Hogyan használható? Ki kell jelölnöd azt az összefüggő területet, ahol szeretnéd a színt összeszámolni. Ezután a CTRL nyomva tartásával ki kell hozzá jelölni a minta színt tartalmazó cellát - ami ne legyen a megszámolandó területen.
    Ezután a Fejlesztőeszközök - Makrók menüpontban kiválasztod a CountColor1 -et és elindítod. Egy üzenetben kiírja a mintacella színének megfelelő cellák darabszámát.
    Természetesen azt is meg lehet adni, hogy melyik cellába írja ki. Akkor az Msgbox sor helyett a Range("X3").Value=countcl sort kell beírnod - X3 helyett azt a címet, ahová szeretnéd az eredményt megkapni.
    Megoldható továbbá az is, hogy egy vagy két cellába (ami mindig fix) beírjuk a vizsgálandó terület és a minta szín címét a makró futtatása előtt -- persze ahhoz módosítani kell a fenti makrót, de ez nem nagy probléma.
    Amit Delila írt, az is megoldás, egy olyan makrót is lehet írni, ami megnézi, hogy a feltételes formázás feltételeinek melyik szín felel meg és azt a feltételt vizsgálja cellánként.
    Erre még visszatérnék, csak azért írtam viszonylag gyorsan, hogy ne menjen el a kedved az egyébként hasznos feltételes formázás használatától.
    Üdv.

Új hozzászólás Aktív témák