Страницы

среда, 30 сентября 2015 г.

Пользовательские функции Excel Часть 2-2 Вариант 4

Создать макрос (процедуру-подпрограмму), обеспечивающий следующие действия:
- отмену ранее существующей заливки ячеек таблицы;
- заливку красным цветом ячеек таблицы, содержащих нулевое значение отработки.
Создаем макрос (см. ссылку на общее описание внизу поста). Пишем такой текст:

Sub Заливка_ячеек()
Dim rng As Range
Dim c As Integer
Dim r As Integer

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

Дополнительные материалы к этому посту

Общее описание и подробности для всех вариантов, список вариантов

Общий список всех сообщений по этой работе