Bonjour kalista,
Je n'ai pas regardé plus que ça ton programme car sans explication complémentaire je ne m'y risquerai pas.
Pour ton problème, l'une des solutions est la chose suivante: l'utilisation d'une variable. Tant qu'il y a des données, on passe à la ligne suivante. A la fin de la boucle while, numLigne contiendra le numéro de la ligne où tu peux écrire sans effacer de données.
Dim numLigne as Integer
numLigne = 1
Dim ws as Worksheet
set ws = Feuil1 'par exemple
while ws.Cells(numLigne,1) <> "" 'tant que la cellule n'est pas vide, on incrémente le compteur
numLigne = numLigne +1
Wend
'la suite de ton programme
'tes différents tests
' et au moment d'écrire :
ws.cells(numLigne,1) = "la valeur que tu veux mettre"