Bonjour
Tout d'abord, merci à @karamel d'avoir édité ton message pour rendre ton code lisible.
Pour tes prochains posts, il faudra faire comme décrit là https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code
Si je comprends bien cette phrase
Je n'ai pas de message d'erreur, il ne se passe juste rien du tout quand je change la longueur.
Tu souhaites qu'il se passe quelque chose quand tu changes une valeur.
Dans ce cas, pourquoi ne pas écrire une fonction, plutôt qu'une "procédure" ?
Exemple
Function MaSomme(val1, val2) MaSomme = val1 + val2 End Function
Si je mets 1 dans la cellule A1, 2 dans la cellule B1 et =MaSomme(A1;B1) dans la cellule C1, j'obtiens 3 et dès que A1 ou B1 est modifiée, C1 est mise à jour.
de rien
Par contre, ton algo a un souci, il semble fonctionner comme il faut avec des grandes valeurs.
Mais si la longueur de départ est 3, Reste5 prend la valeur -2 et a ne sort jamais de la boucle.
Tu peux observer la chose en mettant un point d'arrêt et en exécutant pas à pas tout en espionnant les variables pour voir leur contenu.
Évidement tu ne vas jamais volontairement chercher à calculer le nombre de cales sur une longueur de 3 mm, mais si tu voulais chercher pour 331 et que malencontreusement au lieu de taper un second 3 tu tapes "entrée" tu perdras ce que tu étais en train de faire.
Il faut donc te prémunir de toute mauvaise manip.
Merci pour ce lien :- https://codes-sources.commentcamarche.net/faq/11288-poster-un-essentiel-de-code .
comme cela a fonctionné pour moi. Je vais sûrement ajouter celui-ci à mes favoris.