alors voici quelle est la différence :
Dim lig&
: idem que Dim lig As Long
: déclare la variable lig de type Long
* si cette instruction VBA est placée dans une Sub X, la variable lig est locale à la Sub X ;
donc sa valeur n'est connue que par la Sub X, et elle est initialisée à 0 à l'entrée dans
la Sub X ; tout ceci est pareil pour une variable locale déclarée dans une Function.
* si cette instruction VBA est déclarée en dehors de toute Sub ou Function, elle doit être
placée tout en haut de page (juste après Option Explicit s'il est présent) ; lig est alors
une variable globale, de niveau module ; sa valeur est connue par toutes les Sub et
Function du module ; et donc d'une Sub (ou Function) à une autre, lig conserve sa
valeur ; voilà pourquoi la valeur 150 (ou 40) a été conservée (= gardée, pas concentrée 😜) ;
➯ lors de l'ajout d'une sortie, si tu mets une quantité trop grande, ça met la valeur
de MonAncienneQuantité ; c'était ok pour une modif, pas pour un ajout !
soan