Макрос копирования по условию - VBA
Формулировка задачи:
Добрый день,
нужен макрос для копирования строк с определенным значением в столбце с основного листа на лист2;
второй макрос - для копирования с этого же листа на лист3 если значения равны .... в 2-ух столбцах
Подробнее описал внутри файла.
Надеюсь на вашу помощь!!!
Решение задачи: «Макрос копирования по условию»
textual
Листинг программы
Sub Yana_Zhilak()
Dim LastRow As Long, Rw As Long 'Объявили переменный послдедних строк для двух слистов
LastRow = Cells(Rows.Count, 1).End(xlUp).Row 'Нашли номер последней строки на активном листе (там, где кнопка)
With Sheets("Лист2") 'Применительно к Лист2
Rw = .Cells(Rows.Count, 1).End(xlUp).Row + 1 'Нашли номер первой свободной строки на этом листе
Range(.Cells(4, 1), .Cells(Rw + 1, 5)).ClearContents 'Очистили ПОЛНОСТЬЮ диапазон на втором листе
Rw = 7 'Указали, что первая свободная строка =7
For i = 7 To LastRow 'Цикл со строки № 7 по последнюю заполненную (на активном листе)
If Cells(i, 8) = "ЗБС" Then 'Если ячейка столбца 8 текущей строки = "ЗБС", то
Range(Cells(i, 1), Cells(i, 44)).Copy .Cells(Rw, 1) 'Дипазон (текущая строка, столбцы 1:44) копируем в первую свободную ячейку второго листа
Rw = Rw + 1 'Увеличивем переменную-счётчик первой свободной строки второго листа
End If
Next
End With
End Sub