Bonjour forum,
J'ai une feuille sur laquelle j'enregistre des données de clients et de véhicules.
Je voudrais que lorsque je parcours la colonne B du tableau, s' il n' y a pas de correspondance entre les lignes et la valeur du Textbox, alors on ajoute une nouvelle ligne au tableau sinon je modifie la ligne trouvée.
Voici le code que j'ai écrit.le code fonctionne mais le problème est qu'arrivé sur la 4e ligne du tableau, au lieu d'ajouter une nouvelle ligne, il en ajoute 2. Après il en ajoute 6 ensuite 13, 26 etc ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 . Dim X as integer, Y as integer, i as integer X= Sheets("Client").Range( "B" & Rows.Count).End(Xlup).Row For i= 2 to X If Sheets( "Client").Range("B" & i)<> TextBox1 then Sheets("Client"). ListObjects(1).Listrows.Add Y= Sheets("Client").Range( "B" & Rows.Count).End(Xlup).Row Sheets("Client").Range("A" & Y)= TextBox1 Sheets(" Client").Range( "B" & Y)= TextBox2 Else Sheets ("Client").Range("A" & i)= TextBox1 Sheets ( "Client").Range( "B" & i)= TextBox2 End if Next i
J'ai essayé de bloquer la boucle en ajoutant exit for pour vérification et j'ai constaté que c'était la boucle le problème.
Donc comment procéder ? Car quand je sors de la boucle, il ne vérifie plus mais ajoute maintenant une ligne comme je le souhaite.
Merci à vous
Partager