Здравствуйте, подскажите, можно ли макросом сделать такое. В ячейке B стоит дата, если на листе больше, чем одна строка датой, то макрос стирает все эти строки, кроме первой. Если забита дата, но в строке имеется хоть одна заполненная ячейка, то строка не удаляется. Только макрос должен действовать автоматически. Заранее спасибо большое.
Здравствуйте, подскажите, можно ли макросом сделать такое. В ячейке B стоит дата, если на листе больше, чем одна строка датой, то макрос стирает все эти строки, кроме первой. Если забита дата, но в строке имеется хоть одна заполненная ячейка, то строка не удаляется. Только макрос должен действовать автоматически. Заранее спасибо большое.Kioto
Gustav, как только на листе появляется несколько дат, так сразу и удаляет, например, если скопировать несколько ячеек с данными или растянуть даты, так сразу и должен срабатывать.
Gustav, как только на листе появляется несколько дат, так сразу и удаляет, например, если скопировать несколько ячеек с данными или растянуть даты, так сразу и должен срабатывать.Kioto
Если не трудно, подскажите, пожалуйста. как указать, что если в столбце C есть слово "дебет", то строка не удаляется? пишу так, но не помогает
[vba]
Код
If Not Cells(3) = "дебет" Then
[/vba]
[vba]
Код
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
[/vba]
Если не трудно, подскажите, пожалуйста. как указать, что если в столбце C есть слово "дебет", то строка не удаляется? пишу так, но не помогает
[vba]
Код
If Not Cells(3) = "дебет" Then
[/vba]
[vba]
Код
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