Šūnu skaitīšana pēc interjera krāsas, izmantojot VBA - Excel padomi

Satura rādītājs

Emīlija jautā:

Lūdzu, vai jūs varētu ieteikt formālo risinājumu tādu šūnu skaita skaitīšanai, kurām ir noteikta fona krāsa (ti, šajās šūnās ir daži dati, tomēr krāsa ir tā, kas ir svarīga, lai tās saskaitītu).

Loģiski es uzskatu, ka tam vajadzētu sekot standarta formālai, ti

CountIF(A01:A55,"backgroundcolour=red")

Es uzskatu, ka sarkanā krāsa jāidentificē ar skaitli 3 (saskaņā ar palīdzības failu)

Man jāzina, kā kodēt fona šūnas krāsu, ti, colorfill ?, backgroundcolour ?, interior.color?… ???

Emīlija - ja vien tas būtu tik vienkārši. VBA ir jābūt lietotāja definētai funkcijai. Zemāk ir funkcijas kods. Jums tas jāievada darbgrāmatas jaunā koda modulī.

Kad esat ievadījis kodu, varat izmantot šo formulu:

=CountColor(A1:A99,D2)

Kur D2 ir fona formāts, kuru vēlaties saskaitīt.

Šeit ir kods:

Function CountColor(Rng As Range, RngColor As Range) As Integer Dim Cll As Range Dim Clr As Long Clr = RngColor.Range("A1").Interior.Color For Each Cll In Rng If Cll.Interior.Color = Clr Then CountColor = CountColor + 1 End If Next Cll End Function

Interesanti raksti...