Создать макрос (процедуру-подпрограмму), обеспечивающий следующие действия:
- отмену ранее существующей заливки ячеек таблицы;
- заливку зеленым цветом ячеек таблицы с минимальным месячным выпуском продукции (по всей таблице).
Создаем макрос (см. общее описание по ссылке внизу), пишем текст процедуры:
Потом еще раз проходим вложенный цикл, сравниваем минимальное значение со значением текущей ячейки. Если они равны, то ячейку закрашиваем зеленым цветом.
Общий список всех сообщений по этой работе
- отмену ранее существующей заливки ячеек таблицы;
- заливку зеленым цветом ячеек таблицы с минимальным месячным выпуском продукции (по всей таблице).
Создаем макрос (см. общее описание по ссылке внизу), пишем текст процедуры:
Sub Заливка_ячеек()Определяем пользовательский диапазон, очищаем от заливки все ячейки с данными. Затем с помощью вложенного цикла ищем по строкам и столбцам минимальное значение по всей таблице.
Dim rng As Range
Dim c As Integer
Dim r As Integer
Dim min As Integer
'установка пользовательского диапазона
'для определения количества занятых строк
Set rng = ActiveSheet.UsedRange
'отмена предыдущей заливки
Range(rng.Cells(3, 3), rng.Cells(rng.Rows.Count, 8)).Interior.Pattern = xlNone
'первоначальный минимум равен значению первой ячейки диапазона
min = Cells(3, 3)
'поиск минимума по всем ячейкам с данными выпуска
For r = 3 To rng.Rows.Count
For c = 3 To 8
If min > Cells(r, c) Then min = Cells(r, c)
Next c
Next r
'если текущее значение равно минимальному, то
'производится заливка зеленым цветом
For r = 3 To rng.Rows.Count
For c = 3 To 8
If min = Cells(r, c) Then Cells(r, c).Interior.Color = RGB(0, 255, 0)
Next c
Next r
Set rng = Nothing 'Освобождение памяти
End Sub
Потом еще раз проходим вложенный цикл, сравниваем минимальное значение со значением текущей ячейки. Если они равны, то ячейку закрашиваем зеленым цветом.
Дополнительные материалы к этому посту
Описание, общие подробности для всех вариантов, список вариантовОбщий список всех сообщений по этой работе
