Busque la primera celda con cierto valor en la columna, luego inserte 3 filas arriba

Trabajo en una spreadsheet todas las mañanas y necesito automatizar lo siguiente en una macro de VBA:

En la columna AE, busque el primer valor mayor que cero, luego inserte 3 filas por encima de la fila que contiene esa celda específica.

Algo como esto debería funcionar para usted:

Sub tgr() Dim ws As Worksheet Dim lRow As Long Set ws = ActiveSheet 'Adjust to be the correct worksheet if necessary With Intersect(ws.UsedRange, ws.Columns("AE")) On Error Resume Next lRow = Evaluate("=MATCH(1,INDEX((ISNUMBER(" & .Address(External:=True) & "))*(" & .Address(External:=True) & ">0),),0)") On Error GoTo 0 End With If lRow > 0 Then ws.Rows(lRow).Resize(3).Insert Else MsgBox "No values in column AE found to be greater than 0." End If End Sub