Есть макрос, он копирует строки с листа Word на лист СМС которые в столбце 10 не равны 0. [vba]
Код
Sub Макрос1() Dim LastRow As Long, Rw As Long 'Объявили переменный послдедних строк для двух слистов Sheets("Word").Select 'выбрали нужный лист LastRow = Cells(Rows.Count, 1).End(xlUp).Row 'Нашли номер последней строки на активном листе (там, где кнопка) With Sheets("СМС") 'Применительно к СМС Rw = .Cells(Rows.Count, 1).End(xlUp).Row + 1 'Нашли номер первой свободной строки на этом листе Range(.Cells(4, 1), .Cells(Rw + 1, 5)).ClearContents 'Очистили ПОЛНОСТЬЮ диапазон на втором листе Rw = 2 'Указали, что первая свободная строка =2 For i = 2 To LastRow 'Цикл со строки № 7 по последнюю заполненную (на активном листе) If Cells(i, 10) <> 0 Then 'Если ячейка столбца 10 текущей строки не равна 0 , то Range(Cells(i, 1), Cells(i, 45)).Copy .Cells(Rw, 1) 'Дипазон (текущая строка, столбцы 1:45) копируем в первую свободную ячейку второго листа Rw = Rw + 1 'Увеличивем переменную-счётчик первой свободной строки второго листа End If Next End With End Sub
[/vba] Проблема в том что в лист СМС строки нужно вставить как значение (без формул). Спасибо
Есть макрос, он копирует строки с листа Word на лист СМС которые в столбце 10 не равны 0. [vba]
Код
Sub Макрос1() Dim LastRow As Long, Rw As Long 'Объявили переменный послдедних строк для двух слистов Sheets("Word").Select 'выбрали нужный лист LastRow = Cells(Rows.Count, 1).End(xlUp).Row 'Нашли номер последней строки на активном листе (там, где кнопка) With Sheets("СМС") 'Применительно к СМС Rw = .Cells(Rows.Count, 1).End(xlUp).Row + 1 'Нашли номер первой свободной строки на этом листе Range(.Cells(4, 1), .Cells(Rw + 1, 5)).ClearContents 'Очистили ПОЛНОСТЬЮ диапазон на втором листе Rw = 2 'Указали, что первая свободная строка =2 For i = 2 To LastRow 'Цикл со строки № 7 по последнюю заполненную (на активном листе) If Cells(i, 10) <> 0 Then 'Если ячейка столбца 10 текущей строки не равна 0 , то Range(Cells(i, 1), Cells(i, 45)).Copy .Cells(Rw, 1) 'Дипазон (текущая строка, столбцы 1:45) копируем в первую свободную ячейку второго листа Rw = Rw + 1 'Увеличивем переменную-счётчик первой свободной строки второго листа End If Next End With End Sub
[/vba] Проблема в том что в лист СМС строки нужно вставить как значение (без формул). СпасибоDonald