Bien, la rutina entonces vá en el Editor, en el objeto hoja OC P...
Se ejecuta cada vez que ingreses un valor en la col A.
Private Sub Worksheet_Change(ByVal Target As Range)
'x Elsamatilde
Dim finx As Integer
'controla lo ingresado en col A. Si se seleccionaron varias celdas para limpiar no ejecuta nada
If Target.Column <> 1 Or Target.Count > 1 Then Exit Sub
'si la celda queda vacía no se ejecuta
If Target.Value = "" Then Exit Sub
'copia las fórmulas de la última fila ocupada en la nueva
finx = Target.Row - 1
'para que no vuelva a ejecutar la macro mientras rellena la fila
Application.EnableEvents = False
Range("B" & finx & ":L" & finx).Select
Selection.AutoFill Destination:=Range("B" & finx & ":L" & finx + 1), Type:=xlFillDefault
Range("Q" & finx & ":W" & finx).Select
Selection.AutoFill Destination:=Range("Q" & finx & ":W" & finx + 1), Type:=xlFillDefault
Range("Y" & finx & ":AX" & finx).Select
Selection.AutoFill Destination:=Range("Y" & finx & ":AX" & finx + 1), Type:=xlFillDefault
Range("AZ" & finx & ":BD" & finx).Select
Selection.AutoFill Destination:=Range("AZ" & finx & ":BD" & finx + 1), Type:=xlFillDefault
'incrementa el valor de la col O
Range("O" & finx + 1) = Range("O" & finx) + 1
'se posiciona en col B
Target.Offset(0, 1).Select
'habilita nuevamente las macros
Application.EnableEvents = True
End Sub
Luego te envío el libro .
Sdos y no olvides finalizar la consulta