Summa värvi järgi - VBA koodi näited

Lang L: none (table-of-contents)

Järgmine funktsioon arvutab teatud värvi kõigi lahtrite koguväärtuse, mis on teatud värvi:

Kahjuks ei ole lahtri värvi põhjal summeerimiseks SUMIF -funktsiooni. Kui soovite summeerida värvi järgi, peate looma funktsiooni VBA -s.
Selle koodi kasutamiseks: avage Visual Basic Editor (Alt + F11), sisestage uus moodul (Insert> Module) ning kopeerige ja kleepige soovitud kood moodulisse.

Funktsioon summaks värvi järgi

1234567891011121314151617181920 Funktsioon Color_By_Numbers (Color_Range as Range, Color_Index as Integer) Double'Hämardage värvi_arv_arvud kahekordseltDim Cell"Vaatab lahtreid, mis on vahemikus ja kui'värvi sisemuse omadus vastab lahtri nõutavale värvile'siis läheb kokku'Loop Through vahemikIga lahtri jaoks Color_RangeKui (Cell.Interior.ColorIndex = Color_Index) SiisColor_By_Numbers = Color_By_Numbers + Cell.ValueLõpp KuiJärgmine lahterLõppfunktsioon

See on tegelikult „summa värvi järgi” - nii et kui teate Exceli 56 värvipaleti ja teate näiteks, et värv 4 on heleroheline, helistage järgmiselt:

Värvi_arvud („A1: P20”, 4)

summeerib kõikide lahtrite väärtused vahemikus A1: P20, mis on helerohelised.

Funktsiooni kasutamise hõlbustamiseks töötab järgmine alamprogramm välja kõigi Exceli 56 värvi koguväärtuse. Samuti annab see kogu paleti, nii et iga värvi indeksi numbrit on lihtne näha.

Alamprogramm käivitatakse lehel 1 ja see vaatab vahemikku

12345678910111213141516171819202122 Privaatne alamkäsk Button1_Click ()"Vaatab iga värvi ja koostab väärtuste kokkuvõtte tabeli"lehel 1 lahtris A1 ja allapooleDim Current_Color_Number täisarvunaHämardatud värv_kokku kahekordneCurrent_Color_Number = 1 kuni 56Color_Total = Color_By_Numbers (Sheets ("Sheet2"). Vahemik ("a11: aa64"), Current_Color_Number)Töölehed ("Sheet1"). Vahemik ("A1"). Nihe (Current_Color_Number, 0) = Current_Color_NumberTöölehed ("Sheet1"). Vahemik ("A1"). Nihe (Current_Color_Number, 0) .Interior.ColorIndex = Current_Color_NumberKui Color_Total 0# SiisTöölehed ("Sheet1"). Vahemik ("a1"). Nihe (Current_Color_Number, 1) .Value = Color_TotalLõpp KuiJärgmine Praegune_värvide_arvEnd Sub

XLS -faili allalaadimiseks klõpsake siin

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave