Преброяване по цвят с помощта на VBA в Microsoft Excel

Anonim

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

За този пример примерните данни се състоят от диапазон, който има стойности между 100 и 1000. Стойностите в клетките са маркирани с различни цветове. Искаме да намерим броя на всеки цвят.

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

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

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

DefinedColorRange.Interior.ColorIndex

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

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

 Функция CountByColor (DefinedColorRange As Range, CountRange As Range) Application.Volatile 'Деклариране на променливи Dim ICol като Integer Dim GCell As Range' Получаване на вътрешния цвят на клетката ICol = DefinedColorRange.Interior.ColorIndex 'Завъртане през определения диапазон за всяка GCell CountRange If ICol = GCell.Interior.ColorIndex Тогава 'Получаване на броя на съвпадащите цветни клетки CountByColor = CountByColor + 1 End If Next GCell End Функция 

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

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