Nasledujúca funkcia vypočíta celkovú hodnotu všetkých buniek v určitom rozsahu, ktoré majú konkrétnu farbu:
Sčítanie podľa farby buniek bohužiaľ neexistuje. Ak chcete sčítať podľa farby, budete musieť vytvoriť funkciu v rámci VBA.
Ak chcete použiť tento kód: Otvorte editor jazyka Visual Basic (Alt + F11), vložte nový modul (Vložiť> Modul) a skopírujte a prilepte požadovaný kód do modulu.
Funkcia na súčet podľa farby
1234567891011121314151617181920 | Funkcia Color_By_Numbers (Color_Range As Range, Color_Index As Integer) As Double'Dim Color_By_Numbers ako dvojnásobokDim Cell„Pozriem sa na bunky, ktoré sú v dosahu, a ak„Vlastnosť interiéru farby sa zhoduje s požadovanou farbou bunky'potom sa to zhrnie„Rozsah slučkyPre každú bunku v Color_RangeAk (Cell.Interior.ColorIndex = Color_Index) PotomColor_By_Numbers = Color_By_Numbers + Cell.ValueKoniec AkĎalšia bunkaKoncová funkcia |
V skutočnosti je to „súčet podľa farby“ - takže ak poznáte 56 farebných chutí programu Excel a napríklad viete, že farba 4 je svetlo zelená, zavolajte nasledovne:
Color_By_Numbers („A1: P20“, 4)
sčíta hodnoty pre všetky bunky v rozsahu A1: P20, ktoré majú svetlo zelenú farbu.
Aby bolo používanie funkcie jednoduchšie, nasledujúci podprogram vypočíta celkovú hodnotu pre každú z 56 farieb programu Excel. Poskytuje tiež celé poschodie, takže je ľahké vidieť indexové číslo pre každú farbu.
Podprogram sa vyvolá na hárku 1 a pozerá sa na rozsah
12345678910111213141516171819202122 | Súkromné sub CommandButton1_Click ()„Pozrie sa na každú farbu a vytvorí súhrnnú tabuľku hodnôt„na liste 1 v bunke A1 a nadolDim Current_Color_Number ako celé čísloDim Color_Total as DoublePre Current_Color_Number = 1 až 56Color_Total = Color_By_Numbers (hárky ("Sheet2"). Rozsah ("a11: aa64"), Current_Color_Number)Pracovné listy („List1“). Rozsah („A1“). Ofset (Aktuálne_Color_Number, 0) = Aktuálne_Color_NčísloPracovné listy ("List1"). Rozsah ("A1"). Ofset (Current_Color_Number, 0). Interior.ColorIndex = Current_Color_NumberAk Color_Total 0# PotomPracovné listy („List1“). Rozsah („a1“). Ofset (Aktuálne_Color_Number, 1). Hodnota = Color_TotalKoniec AkĎalej Current_Color_NumberKoniec pod |
Kliknite sem a stiahnite si súbor XLS