Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Удаление строк после строки Х и до строки Y - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Удаление строк после строки Х и до строки Y (Формулы/Formulas)
Удаление строк после строки Х и до строки Y
Léaud Дата: Вторник, 20.04.2021, 16:31 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Необходимо произвести удаление строк, начинающихся со строки "Восток" и до строки "Запад" включительно (лист1). То есть, остаются строки, находящиеся после строки "Запад" (лист2)
К сообщению приложен файл: 0411710.xls (29.5 Kb)


Сообщение отредактировал Léaud - Вторник, 20.04.2021, 17:55
 
Ответить
СообщениеНеобходимо произвести удаление строк, начинающихся со строки "Восток" и до строки "Запад" включительно (лист1). То есть, остаются строки, находящиеся после строки "Запад" (лист2)

Автор - Léaud
Дата добавления - 20.04.2021 в 16:31
_Igor_61 Дата: Вторник, 20.04.2021, 23:26 | Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 504
Репутация: 90 ±
Замечаний: 0% ±

Excel 2007
Ну раз уж необходимо, то вот:
[vba]
Код
Sub West_()
    Dim i&, rW&, rE&, r&, arr, wS As Worksheet, wF As Worksheet
    Set wS = Worksheets("Start")
    Set wF = Worksheets("Final")
    wF.Range("A:F").ClearContents
    wS.Activate
For i = 1 To wS.Cells(Rows.Count, 4).End(xlUp).Row
If wS.Cells(i, 1) = "Запад" Then
    rW = i
End If
If rW > 0 And wS.Cells(i, 1) = "" Then
    rE = i
    arr = wS.Range(Cells(rW + 1, 1), Cells(rE, 6))
    wF.Activate
    r = wF.Cells(Rows.Count, 1).End(xlUp).Row
    wF.Range("A" & r & ":F" & r + rE - rW).Resize = arr
    rW = 0
    wS.Activate
End If
Next i
    wF.Activate
End Sub
[/vba]
При условии что сразу после блоков "Запад" есть одна или несколько пустых ячеек в первом столбце и что в четвертом столбце все строки заполнены до конца таблицы (т.е. как в Вашем файле)
К сообщению приложен файл: Laud.xlsm (19.1 Kb)
 
Ответить
СообщениеНу раз уж необходимо, то вот:
[vba]
Код
Sub West_()
    Dim i&, rW&, rE&, r&, arr, wS As Worksheet, wF As Worksheet
    Set wS = Worksheets("Start")
    Set wF = Worksheets("Final")
    wF.Range("A:F").ClearContents
    wS.Activate
For i = 1 To wS.Cells(Rows.Count, 4).End(xlUp).Row
If wS.Cells(i, 1) = "Запад" Then
    rW = i
End If
If rW > 0 And wS.Cells(i, 1) = "" Then
    rE = i
    arr = wS.Range(Cells(rW + 1, 1), Cells(rE, 6))
    wF.Activate
    r = wF.Cells(Rows.Count, 1).End(xlUp).Row
    wF.Range("A" & r & ":F" & r + rE - rW).Resize = arr
    rW = 0
    wS.Activate
End If
Next i
    wF.Activate
End Sub
[/vba]
При условии что сразу после блоков "Запад" есть одна или несколько пустых ячеек в первом столбце и что в четвертом столбце все строки заполнены до конца таблицы (т.е. как в Вашем файле)

Автор - _Igor_61
Дата добавления - 20.04.2021 в 23:26
Léaud Дата: Среда, 21.04.2021, 10:31 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

При условии что сразу после блоков "Запад" есть одна или несколько пустых ячеек в первом столбце и что в четвертом столбце все строки заполнены до конца таблицы (т.е. как в Вашем файле)


Благодарю за помощь и отклик!

Да, пустая строка присутствует. Как я понял за счёт этого макрос и работает, однако, вероятно я дал не совсем полный пример, т.к. иногда присутствуют пустые ячейки в самом блоке из-за чего он отбирает верхнюю часть, а нижнюю часть после пустой ячейки блока с информацией — нет.

А четвертый столбец (скрытый) не всегда заполнен, но макрос срабатывает


Сообщение отредактировал Léaud - Среда, 21.04.2021, 10:32
 
Ответить
Сообщение
При условии что сразу после блоков "Запад" есть одна или несколько пустых ячеек в первом столбце и что в четвертом столбце все строки заполнены до конца таблицы (т.е. как в Вашем файле)


Благодарю за помощь и отклик!

Да, пустая строка присутствует. Как я понял за счёт этого макрос и работает, однако, вероятно я дал не совсем полный пример, т.к. иногда присутствуют пустые ячейки в самом блоке из-за чего он отбирает верхнюю часть, а нижнюю часть после пустой ячейки блока с информацией — нет.

А четвертый столбец (скрытый) не всегда заполнен, но макрос срабатывает

Автор - Léaud
Дата добавления - 21.04.2021 в 10:31
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Удаление строк после строки Х и до строки Y (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!