Banner

sobota 13. júla 2013

Ako sčítať hodnoty podľa farby bunky

 

V praxi sa človek stretne s rôznymi problémami, ktoré sú bežne dostupnými excelovskými funkciami a možnosťami neriešiteľné, resp. ich použitím by to trvalo veľmi dlho.

Zručnejší užívateľ poďakuje Bohu za VBA, pomocou ktorého vyrieši skoro všetko. Dnešná téma je námetom od jedného čitateľa - analytika.

Dostal sa mu do rúk report, kde potreboval sčítať jednotlivé bunky podľa farieb. Nakoľko jeho špekulácia s funkciami nedopadla úspešne, rozhodol som sa mu pomôcť a napísal som krátky VBA kód:

Function SumaFarba(FarbaBunka As Range, Oblast As Range)

Dim c
Dim Farba As Integer
Dim Vysledok
 
Farba = FarbaBunka.Interior.ColorIndex 'Pomocou .Interior.ColorIndex načíta kód  farby  a vloží ho do premennej Farba
   For Each c In Oblast
       If c.Interior.ColorIndex = Farba Then 'Ak sa kód farby v bunke rovná kódu v premennej Farba, hodnota sa pričíta do premenne Vysledok
              Vysledok = c.Value + Vysledok
       End If
   Next
c
  
SumaFarba = Vysledok

End Function

Celá táto procedúra je k dispozícii vo forme template-u, ktorý si môžete stiahnuť kliknutím na:

 

downloads_normal

 

Nezabudnite sa pridať a sledovať novinky a postrehy na Facebook-u – Kliknite na nasledujúce logo.

EK logo FB

Žiadne komentáre:

Zverejnenie komentára

Poznámka: Komentár môže zverejniť iba člen tohto blogu.