Saberexcel - site das macros
Essas macros do Aplicativo Microsoft Excel VBA(Visual Basic Application), deletará todos os dados após determinada data,
um Loop(laço) identificará a primeira data e deletará os dados anteriores à determinada data.
Essa data será determinada por meio de uma entrada de dados (InputBox)
Essa macro rola a tela até a data de hoje
vamos montar o exemplo copie os dados acima e cole na celula A1 na abertura do wkb
rolará a tela e selecionará a primeira célula com a data de hoje()
Sub auto_open()
p = Application.Match(CDbl(Date), [A1:A100], 1)
Application.Goto [A1].Offset(p - 1 + IIf(Cells(p, 1) = Date, 0, 1)), scroll:=True
End Sub
Sub localizar_data_hoje()
On Error Resume Next
Sb = Application.Match(CDbl(Date) - 1, [A1:A100], 1) 'deletará data hoje -1
Application.Goto [A1].Offset(Sb - 1 + IIf(Cells(Sb, 1) = Date, 0, 1)), scroll:=True
ActiveCell.Select
ActiveCell.Offset(-1, 0).Select
Do While IsEmpty(ActiveCell.Offset(0, 0)) = False 'faça enquanto houver dados na coluna(A)
ActiveCell.Value = ""
ActiveCell.Offset(0, 1).Value = ""
ActiveCell.Offset(0, 2).Value = ""
ActiveCell.Offset(0, 3).Value = ""
ActiveCell.Offset(0, 4).Value = ""
ActiveCell.Offset(-1, 0).Select
Loop
' If Err <> 0 Then MsgBox "Data nao encontrada!"
End Sub
Sub Deletar_selecao()
For i = [A65000].End(xlUp).Row To 1 Step -1
If Application.CountA(Rows(i)) = 0 Then
Rows(i).Delete
End If
Next i
End Sub
Sub Macro1()
Range("L1:L16").Select
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("E2").Activate
'SendKeys ("{Esc}")
End Sub
Aprenda tudo sobre o Aplicativo Microsoft Excel VBA(Visual Basic Application),sozinho, com baixo custo, praticando com os produtos didáticos Saberexcel
Baixe o exemplo de planilha contendo os macros e acima
Excel vba datas loop deleta dados anteriores data desejada (33.66 KB)