Проверка строк на наличие в них данных - VBA
Формулировка задачи:
Здравствуйте, скажите, пожалуйста можно ли такое подредактировать макрос, чтобы он удалял строки, если я выделяю любую строку на листе, а в ней не заполнен столбцы A или B, то он перемещает на последнюю строку, в которой заполнены эти столбцы, а все данные в этих строках стирает.
Сейчас макрос просто удаляет пустые строки, нужно добавить условие, что если есть в столбце A данные, но нет в B он их удаляет.
тема на другом сайте - http://www.planetaexcel.ru/forum/ind...#message745742
Листинг программы
- Private Sub Worksheet_SelectionChange(ByVal Target As Range)
- Dim strOk As Long
- strOk = Evaluate("=LOOKUP(2,1/(LEN(A:A)+LEN(B:B)),ROW(A:A))")
- If Target.Row > strOk Then
- Rows((strOk + 1) & ":" & Target.Row).Delete Shift:=xlUp
- End If
- End Sub
Решение задачи: «Проверка строк на наличие в них данных»
textual
Листинг программы
- Private Sub Worksheet_SelectionChange(ByVal Target As Range)
- Dim strOk&, strOkA&, strOkB&
- strOkA = Evaluate("=LOOKUP(2,1/LEN(A:A),ROW(A:A))")
- strOkB = Evaluate("=LOOKUP(2,1/(LEN(B:B)),ROW(B:B))")
- strOk = IIf(strOkA < strOkB, strOkA, strOkB)
- If Target.Row > strOk Then
- Rows((strOk + 1) & ":" & Target.Row).Delete Shift:=xlUp
- End If
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д