A ColorFunction létrehozása és használata az Excelben

  • Ossza Meg Ezt
Hugh West

Az Excelben nincs olyan funkció, amely a cellák színe alapján számításokat végezhetne. De a Microsoft Visual Basic for Applications (VBA) lehetőség van arra, hogy a cellák színe alapján egyéni számítási függvényeket készítsen. Ebben a cikkben megmutatom, hogyan hozhatja létre és használhatja a ColorFunction-t az Excelben.

Tegyük fel, hogy van egy vállalat termékrendelésének adatállománya. Az oszlop Megrendelés Mennyiség A kiszállított megrendelések világos zöld színűek, a kiszállítás alatt álló megrendelések pedig világos narancssárga színűek. Most az azonos színű cellák megszámlálásával megállapíthatjuk, hogy hány ügyfél kapta meg vagy nem kapta meg a megrendelését. A kiszállított vagy a kiszállítás alatt álló megrendelések teljes mennyisége az azonos színű cellák összeadásával állapítható meg.

Gyakorlati munkafüzet letöltése

Színfunkció Excel.xlsm-ben

ColorFunction az Excelben

1. lépés : Makrómodul megnyitása a VBA ablakban

Először meg kell nyitnia a VBA ablakot a ALT+F11. Ezután kattintson a jobb gombbal a lap nevére a bal oldali panelen, és válassza a Insert> modul

Ennek eredményeképpen egy Modul a doboz kinyílik.

2. lépés : VBA kód beillesztése a ColorFunction létrehozásához

Szúrja be a következő kódot a Modul mezőt, és zárja be a VBA ablak.

 Function ColorFunction(rColor As Range, rRange As Range, Optional SUM As Boolean) Dim rCell As Range Dim lCol As Long Dim vResult lCol = rColor.Interior.ColorIndex If SUM = True Then For Each rCell In rRrange If rCell.Interior.ColorIndex = lCol Then vResult = WorksheetFunction.SUM(rCell, vResult) End If Next rCell Else For Each rCell In rRrange If rCell.Interior.ColorIndex = lCol Then vResult = 1 +vEredmény End If Következő rCell End If ColorFunction = vEredmény End Function 

Itt a VBA-kód létrehoz egy egyéni függvényt, amelynek neve ColorFunkció amely a színes cellákat számolja, ha az argumentumot úgy adjuk meg, hogy HAMIS és összeadja a színes cellákat, ha az érvet úgy adjuk meg, hogy IGAZ.

3. lépés : A munkafüzet mentése Excel makróval engedélyezett munkafüzetként

Az Excel munkafüzetet a .xlsm formátumban mentse el az egyéni funkcióját. Először is, menjen a Fájl az Excel ablak bal felső sarkából.

Ezután válassza ki a Mentés másként.

Ezután válassza ki Excel makróval támogatott munkafüzet (*xlsm) és kattintson a Mentés.

4. lépés : ColorFunction használata a színes cellák számolásához

Most már használhatja az egyéni SzínFunkció.

A világoszöld cellák számának kiszámításához írja be a következő képletet egy üres cellába,

=ColorFunction(F5,$D$5:$D$11,FALSE)

Tessék, F5 = Kritérium cella, amelyik színt számolni kell

$D$5:$D$11 = Tartomány a számláláshoz

HAMIS azt jelzi, hogy a kritériumcellával azonos színű cellák számát kell számolni.

Sajtó BELÉPÉS és megkapja a világoszöld sejtek számát.

Hasonló módon megkaphatja a világos narancssárga sejtek számát is.

5. lépés : ColorFunction használata a színes cellák összegzéséhez

A világoszöld színű cellák összegének kiszámításához írja be a következő képletet egy üres cellába,

=ColorFunction(F5,$D$5:$D$11,TRUE)

Tessék, F5 = Kritérium cella, amelynek színét összegezni kell.

$D$5:$D$11 = Tartomány az összeghez

TRUE azt jelzi, hogy a kritériumcellával azonos színű cellák száma összeadódik.

a világoszöld cellák összegét kapja meg, ha megnyomja a BELÉPÉS.

Hasonló módon megkaphatjuk a világos narancssárga cellák összegét is.

A színes cellák számolásának és összegzésének alternatív módjai

Ahelyett, hogy a SzínFunkció, kétféleképpen kaphatja meg a színes cellák számát, vagy összegezheti a színes cellákat.

1. A FILTER és SUBTOTAL funkciók használata

A színes cellák számát és összegét a következővel kaphatja meg Szűrő és a SUBTOTAL funkció .

Először menjen a Adatok fülre, és kattintson a Szűrő.

Ezután minden oszlopfejléc mellett megjelenik a lefelé mutató nyíl. Kattintson a lefelé mutató nyílra a Megrendelés Mennyiség (Színes oszlop), menjen a Szűrés szín szerint , és válassza a világoszöld színt.

Most már csak világoszöld színű adatokat fog látni ebben az oszlopban. A számoláshoz írja be a következő képletet,

=SZUBTOTAL(2,D5:D11)

Itt 2 jelzi, hogy a cellát megszámolják, és D5:D11 az adatok tartománya.

Miután megnyomta a BELÉPÉS megkapja a világoszöld színű cellák számát.

A színes cellák összegének kiszámításához írja be a következő képletet,

=SZUBTOTAL(9,D5:D11)

Itt 9 azt jelzi, hogy a cellát összeadjuk, és D5:D11 az adatok tartománya

Miután megnyomta a BELÉPÉS megkapja a világoszöld színű cellák összegét.

Ha a szűrőt világos narancssárga színűre változtatja, megkaphatja a narancssárga színű cellák számát és összegét.

2. A GET.CELL funkció használata

A GET.CELL funkcióval megszámolhatja és összegezheti a színes cellákat.

Először menjen a Képletek lapot, és válassza a Define Name.

A Új név Megjelenik egy mező. Írjon be egy nevet, például Színes a Név Box. és Insert the formula in A következőkre vonatkozik és nyomja meg a RENDBEN.

=GET.CELL(38,'GET CELL'!$D5)

Itt a 38 azt jelzi, hogy a képlet a hivatkozott cella színkódját adja meg, és a 'GET CELL'!$D5 a hivatkozott cella (a színes oszlop oszlopfejléc utáni első cella)

Most írja be =Color (A korábban megadott név a Nevek meghatározása doboz) a színes oszlop szomszédos oszlopában.

Miután megnyomta a BELÉPÉS és a cella húzása E5 az adatkészlet végére, akkor megkapja az oszlop összes színes cellájának színkódját. E .

Most írja be a következő képletet a világoszöld színű cellák számának kiszámításához

=COUNTIF($E$5:$E$11,50)

Tessék, $E$5:$E$11 a számlálás tartománya, és 50 a világoszöld színkód.

Miután megnyomta a Írja be a címet. megkapja a zöld színű cellák számát.

Írja be a következő képletet a világoszöld színű cellák összegének kiszámításához,

=SUMIF(E5:E11,50,D5:D11)

Tessék, E5:E11 a kritériumtartomány, 50 a világoszöld színkódot jelzi, és D5:D11 az összegtartomány.

Sajtó BELÉPÉS és megkapja az összes zöld színű cella összegét.

Hasonló módon megkaphatja a világos narancssárga színű cellák számát és összegét.

Következtetés

Remélem, hogy a cikk átnézése után most már létrehozhatja és használhatja a ColorFunction-t az Excelben. Ha bármilyen problémával szembesül, kérjük, hagyjon megjegyzést.

Hugh West nagy tapasztalattal rendelkező Excel-oktató és elemző, több mint 10 éves tapasztalattal az iparágban. Számvitel és pénzügy szakos alapdiplomát, valamint üzleti adminisztrációból mesterképzést szerzett. Hugh szenvedélye a tanítás, és egyedülálló tanítási megközelítést dolgozott ki, amely könnyen követhető és érthető. Az Excelben szerzett szakértői tudása világszerte több ezer diáknak és szakembernek segített abban, hogy készségeiket és karrierjüket kiválóan teljesítsék. Hugh blogján keresztül megosztja tudását a világgal, ingyenes Excel-oktatóanyagokat és online képzéseket kínálva, hogy segítse az egyéneket és a vállalkozásokat teljes potenciáljuk kibontakoztatásában.