Sumif criteriul fiind culoarea celulei (Microsoft Office Excel 2003 Function Category: User Defined)

Microsoft Office Excel 2003 nu stie sa adune valorile din celule pe baza culorilor, dar exista categoria de functii User Defined in care apar functiile construite de utilizator.

image

Pentru ca functia construita sa apara in User Defined se apasa combinatia de taste Alt+ F11

si apare Fereastra Microsoft Visual Basic

 image

Clic pe meniul Insert si clic pe optiunea Module

image

Si se introduce in fereastra aparuta codul pentru functia construita de user care executa operatia de adunarea doar a valorilor din celule care au   culoarea dorita.

Exemplu cod:

Function SumInteriorCuloare(Culoare_Interior As Range, Zona_Insumare As Range)
    ‘Def variabilelor
Dim ssRange As Range
Dim sumaColor As Long
Dim zZona_Insumare As Range

‘Def constantelor
sumaColor = 0
Set zZona_Insumare = Zona_Insumare
vCuloare = Culoare_Interior.Interior.ColorIndex

‘ Suma pe culori
For Each ssRange In zZona_Insumare
    If ssRange.Interior.ColorIndex = vCuloare Then
        sumaColor = sumaColor + ssRange.Cells.Value
    End If
Next ssRange

‘ Returnare rezultat
SumInteriorCuloare = sumaColor

End Function

image

Se inchide Fereastra Visual Basic

Clic pe Meniul Insert, optiunea Function.

image

Apare fereastra Insert Function, se alege categoria User Defined

image

Si se selecteaza Functia construita SumInteriorCuloare,  apoi clic  pe butonul Ok.

image

Apare fereastra Function Arguments

image

In caseta corespunzatoare zonei Culoare_Interior avem introdusa adresa unei celule colorate ce contine culoarea respectiva(galben).

In caseta corespunzatoare zonei Zona_Insumare avem introdusa adresa zonei de celule  cu valori.

Clic pe Ok

image

Se obtine valoarea 9. Pentru Celulele care au culoarea Galben

Tagged , , , , , ,

Leave a Reply