Сумма по цвету с помощью VBA в Microsoft Excel
В этой статье мы создадим пользовательскую функцию для вычисления суммы чисел в ячейках диапазона, имеющего определенный цвет.
В этом примере образцы данных состоят из данных отдела продаж. Данные отдела продаж содержат подробную информацию о количестве проданных товаров. Он содержит информацию о продукте, который доступен в трех цветах: серый, красный и зеленый. Мы хотим найти сумму проданных товаров по цвету товара.
Для вычисления суммы по цвету мы создали специальную функцию SumByColor. Эта функция принимает на вход два параметра диапазона. Первый параметр диапазона определяет внутренний цвет ячейки, а второй параметр диапазона определяет диапазон выборки.
Объяснение кода
Application.Volatile используется, потому что он будет пересчитываться каждый раз при изменении значения ячейки в книге.
DefinedColorRange.Interior.ColorIndex Приведенный выше код используется для получения внутреннего цвета определенного диапазона.
Пожалуйста, введите код ниже
Option Explicit Function SumByColor(DefinedColorRange As Range, SumRange As Range) Application.Volatile 'Declaring variables Dim ICol As Integer Dim GCell As Range 'Getting the interior color of the cell ICol = DefinedColorRange.Interior.ColorIndex 'Looping through the defined range For Each GCell In SumRange If ICol = GCell.Interior.ColorIndex Then 'Getting the sum of matching colored cell SumByColor = SumByColor + GCell.Value End If Next GCell End Function
Если вам понравился этот блог, поделитесь им с друзьями на Facebook и Facebook.
Мы будем рады услышать от вас, дайте нам знать, как мы можем улучшить нашу работу и сделать ее лучше для вас. Напишите нам на [email protected]