Re,
Dans l'exemple de Pascal, "ligne" est déclaré en tant que "Integer".
La ligne de code "ligne = InputBox("Entrer le numéro de ligne : ", "Modification", , 100, 100)" va donc attendre un "Integer".
Si tu cliques sur "Annuler", la fonction Inputbox va renvoyer "" qui est du texte.
D'où une incompatibilité de type et l'apparition d'un message d'erreur.
"On Erreur Resume Next", dans ce cas, précise au programme qu'il n'a qu'à se contenter du zéro que lui retourne la fonction Inputbox en cas d'annulation. Et p'is c'est comme ça.
Cela permet donc de conserver "ligne" en tant que "Integer", si c'est important pour la suite de ton programme, et de tester si "ligne" est égale à zéro.
Mets une apostrophe devant la ligne "On Error...." et fais une exécution pas à pas (F8 quand tu es dans VBE) avec une annulation sur la demande de l'Inputbox et regarde ce qui se passe.
En espérant ne pas avoir raconté trop de conneries.
Abel