Excel darabszámolás/összegzés betűszín szerint

Névtelen
2019-11-05T12:16:31+00:00

Szeretném, ha az Excel táblázat egy cellája megadná, hogy egy általam meghatározott tartományban hány darab olyan cella van, amelyben a betűszín piros.

Sajnos, nem találtam eddig olyan képletet, amely megoldja ezt.

Szintén hasznos lenne a számomra, ha össze tudnám adni egy kiválasztott tartomány adott színű celláinak tartalmát. (pl. a pirosakat). A súgóban erre sem találtam megoldást.

Kérem segítségét!

Előre is köszönöm!

Microsoft 365 és Office | Excel | Otthoni | Windows

Zárolt kérdés. Ez a kérdés a Microsoft támogatási közösségéből lett áttelepítve. Szavazhat arról, hogy hasznos-e, de nem adhat hozzá megjegyzéseket vagy válaszokat, és nem követheti a kérdést.

0 megjegyzés Nincsenek megjegyzések

2 válasz

Rendezés alapja: Legújabb
  1. Névtelen
    2019-11-13T23:58:17+00:00

    Szeretném, ha az Excel táblázat egy cellája megadná, hogy egy általam meghatározott tartományban hány darab olyan cella van, amelyben a betűszín piros.

    Sajnos, nem találtam eddig olyan képletet, amely megoldja ezt.

    Szintén hasznos lenne a számomra, ha össze tudnám adni egy kiválasztott tartomány adott színű celláinak tartalmát. (pl. a pirosakat). A súgóban erre sem találtam megoldást.

    Kérem segítségét!

    Előre is köszönöm!

    Sajnos erre a problémára nincs beépített Excel függvény. De VB kóddal megoldható.

    Vesd fel a problémádat a Prog.hu-n.

    Function SzumBetuszin(Tartomany As Range, RefBetuszin As Range) As Variant

    On Error GoTo SzumBetuszin_Err

    ' A betűszín számoló algoritmus nem működik a tartományban

    ' feltételes formázással színezett betűszínekre!

    Dim RefSzin As Long ' A referencia cella betűszíne

    Dim xTart1 As Range ' Tartomány első része

    Dim xTart2 As Range ' Tartomány második része

    Dim xByt As Byte

    Dim xStr As String

    Dim RowStr As Long ' Row - Sorok

    Dim RowEnd As Long ' Row

    Dim ColStr As Long ' Column - Oszlopok

    Dim ColEnd As Long ' Column

    Dim xRow As Long ' Row

    Dim xCol As Long ' Column

    Dim xSum As Long ' Összegzés

    If InStr(1, RefBetuszin.Address, ":", vbBinaryCompare) > 0 Then

    SzumBetuszin = "#A RefBetűszín nem lehet tartomány!"

    Exit Function

    End If

    RefSzin = Cells(RefBetuszin.Row, RefBetuszin.Column).Font.Color

    xStr = Tartomany.Address

    xStr = Replace(xStr, "$", "", 1, , vbBinaryCompare)

    xByt = InStr(1, xStr, ":", vbBinaryCompare)

    If xByt = 0 Then

    ' Egy cella

    RowStr = Range(xStr).Row

    RowEnd = RowStr

    ColStr = Range(xStr).Column

    ColEnd = RowStr

    Else

    ' Tartomány

    Set xTart1 = Range(Left(xStr, xByt - 1))

    Set xTart2 = Range(Right(xStr, Len(xStr) - xByt))

    RowStr = xTart1.Row

    RowEnd = xTart2.Row

    ColStr = xTart1.Column

    ColEnd = xTart2.Column

    End If

    xSum = 0

    For xCol = ColStr To ColEnd ' Oszlopok

    For xRow = RowStr To RowEnd ' Sorok

    If RefSzin = Cells(xRow, xCol).Font.Color Then xSum = xSum + 1

    Next xRow

    Next xCol

    SzumBetuszin = xSum

    Exit Function

    '------------------------------------------------------------------------------

    SzumBetuszin_Err:

    MsgBox "#" & Err.Number & vbCrLf & _

    Err.Description, vbCritical, "Function SzumBetuszin(Tartomany As Range, RefBetuszin As Range) As Variant"

    End Function

    Hasznos volt ez a válasz?

    Ezt a választ 2 személy találta hasznosnak.
    0 megjegyzés Nincsenek megjegyzések
  2. Névtelen
    2019-11-13T03:50:42+00:00

    Szeretném, ha az Excel táblázat egy cellája megadná, hogy egy általam meghatározott tartományban hány darab olyan cella van, amelyben a betűszín piros.

    Sajnos, nem találtam eddig olyan képletet, amely megoldja ezt.

    Szintén hasznos lenne a számomra, ha össze tudnám adni egy kiválasztott tartomány adott színű celláinak tartalmát. (pl. a pirosakat). A súgóban erre sem találtam megoldást.

    Kérem segítségét!

    Előre is köszönöm!

    Sajnos erre a problémára nincs beépített Excel függvény. De VB kóddal megoldható.

    Vesd fel a problémádat a Prog.hu-n.

    Hasznos volt ez a válasz?

    0 megjegyzés Nincsenek megjegyzések