Проверка строк на наличие в них данных - VBA

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, скажите, пожалуйста можно ли такое подредактировать макрос, чтобы он удалял строки, если я выделяю любую строку на листе, а в ней не заполнен столбцы A или B, то он перемещает на последнюю строку, в которой заполнены эти столбцы, а все данные в этих строках стирает. Сейчас макрос просто удаляет пустые строки, нужно добавить условие, что если есть в столбце A данные, но нет в B он их удаляет. тема на другом сайте - http://www.planetaexcel.ru/forum/ind...#message745742
Листинг программы
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2. Dim strOk As Long
  3. strOk = Evaluate("=LOOKUP(2,1/(LEN(A:A)+LEN(B:B)),ROW(A:A))")
  4. If Target.Row > strOk Then
  5. Rows((strOk + 1) & ":" & Target.Row).Delete Shift:=xlUp
  6. End If
  7. End Sub

Решение задачи: «Проверка строк на наличие в них данных»

textual
Листинг программы
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2.     Dim strOk&, strOkA&, strOkB&
  3.     strOkA = Evaluate("=LOOKUP(2,1/LEN(A:A),ROW(A:A))")
  4.     strOkB = Evaluate("=LOOKUP(2,1/(LEN(B:B)),ROW(B:B))")
  5.     strOk = IIf(strOkA < strOkB, strOkA, strOkB)
  6.     If Target.Row > strOk Then
  7.         Rows((strOk + 1) & ":" & Target.Row).Delete Shift:=xlUp
  8.     End If
  9. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.769 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы