Hola,
Prueba a poner este código justo a continuación del tuyo
Código:
Sub vaciar()
Cells(1, 2).Select
Do While (IsEmpty(ActiveCell) = False)
ActiveCell.Delete
ActiveCell.Offset(1, 0).Select
Loop
End Sub
Además, en tú código, por ejemplo en la línea siguiente a la declaración de las variables, justo antes de asignar la variable valor, llama a este procedimiento escribiendo su nombre:
Ya me dirás... Saludos