Сумиране по цвят с помощта на VBA в Microsoft Excel

Anonim

В тази статия ще създадем персонализирана функция за изчисляване на сумата от числа в клетки в диапазона с определен цвят.

За този пример примерните данни се състоят от данни на екипа по продажбите. Данните на търговския екип съдържат подробности, свързани с броя на продадените артикули. Той съдържа информация, свързана с продукта, която се предлага в три цвята сиво, червено и зелено. Искаме да намерим сумата на продадените артикули по цвят на продукта.

За да изчислим сумата по цвят, създадохме персонализирана функция „SumByColor“. Тази функция приема два параметъра диапазон като вход. Първият параметър на диапазона определя вътрешния цвят на клетката, а вторият параметър на диапазона определя диапазона на извадката.

Обяснение на кода

Application.Volatile се използва, защото ще преизчислява всеки път, когато се промени стойност на клетка в работната книга.

DefinedColorRange.Interior.ColorIndex

Горният код се използва за получаване на вътрешния цвят на определения диапазон.

Моля, следвайте кода по -долу

 Опция Експлицитна функция SumByColor (DefinedColorRange As Range, SumRange As Range) Application.Volatile 'Деклариране на променливи Dim ICol като Integer Dim GCell As Range' Получаване на вътрешния цвят на клетката ICol = DefinedColorRange.Interior.ColorIndex 'Завъртане през определения диапазон за всеки GCell In SumRange If ICol = GCell.Interior.ColorIndex then 'Получаване на сумата от съвпадащи цветни клетки SumByColor = SumByColor + GCell.Value End If Next GCell End Функция 

Ако този блог ви е харесал, споделете го с приятелите си във Facebook. Също така можете да ни следвате в Twitter и Facebook.

Ще се радваме да чуем от вас, уведомете ни как можем да подобрим работата си и да я направим по -добра за вас. Пишете ни на имейл сайта