Sua pergunta não indica qual fórmula você deseja aplicar e lê como você pode aplicar uma fórmula para uma coluna inteira quando o número de linhas é desconhecido.
Algumas ideias
Range("A:A") 'this grabs the entire range
Então, você poderia fazer
Dim rng As Range
Dim row As Range
Dim cell As Range
Set rng = Range("A1:C2")
For Each row In rng.Rows
For Each cell in row.Cells
'logic
Next cell
Next row
Ou, você pode continuar indo para a próxima linha até a próxima linha ficar vazia
dim row as integer
row = 1
do while (Range("A" & row).value<>"")
'logic
row= row + 1
loop
A sua pergunta também indica que está apenas fazendo a planilha inteira quando você a carrega pela primeira vez, depois, quando você aperta o botão, ela não é aplicada a novas entradas. Isso significa que ele não está contando o número total de linhas corretamente, então você pode usar algo como o acima para garantir que ele sempre faça uma iteração em todas as linhas.