Excel VBA Макросы: Условие - Как проверить значение в определенной ячейке в строке

Автор gtz, 16 января 2018, 17:14

gtz

Имеется выражение
    For Each row In ActiveSheet.Rows("3:" & R)
где R переменная = R = Cells(Rows.Count, "A").End(xlUp).row

Как добавить проверку (условие) содержимого ячейки в строке для того, чтобы происходило выполнение макроса.
Т.е. по простому:

For Each row In ActiveSheet.Rows("3:" & R)
If 3-я ячейка содержит = "Дерево" then
           команда
next row

Администратор

If row.cells(1,3).value = "Дерево" then
    команда
next row

Или так можно, чтобы код был проще:
If row.cells(3).value = "Дерево" then
    команда
next row

Если в скобках Cells находится одно число, то обращение идёт не по номеру строки и столбца, а по порядковому номеру ячейки во фрагменте.

Администратор

Вместо "R" лучше используйте "lr", что означает "last row - последняя строка".
А переменная "R" означает "row - строка".