Salut,
En utilisant application.inputbox tu peux mettre n en single et supprimer la boucle.
Sub entrerN()
Dim N!
n=nb
'ton traitement sur n
end sub
Function NB!()
NB = Fix(Application.InputBox('Saisir un nombre entier', 'Titre', , , , , , 1))
End Function