Bonjour
j'ai créé un programme de commande de repas il y a une dizaine d'années. Il fonctionne très bien depuis. J'ai apporté une modif avec un nouvel userform avec les mêmes lignes de code fonctionnant sans pb avec un autre userform. cette fois ca ne marche pas : il s'agit de copier une ligne sous condition (variable i) de la feuille "COMMANDE UF1" dans la première ligne vide de la feuille "LISTEACCOMP" , ça me recopie des dizaines de fois la même ligne de la feuille "COMMANDE UF1" dans la feuille "LISTEACCOMP" avant de s'arrêter !?! voici le code :
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Dim i As Long
For i = 5 To 45
Sheets("COMMANDE UF1").Select
If VISITEURUF1.ComboBox1.Value = Sheets("COMMANDE UF1").Cells(i, 3).Value Then
Sheets("COMMANDE UF1").Cells(i, 37).Value = VISITEURUF1.TextBox4.Value
Sheets("COMMANDE UF1").Cells(i, 38).Value = VISITEURUF1.TextBox5.Value
End If
'UF1
Call listeUF1
Next
Application.ScreenUpdating = True
End Sub
Voici le code de la macro "listeUF1" :
Sub listeUF1()
'RENSEIGNER LISTEACCOMP
Dim i As Long
For i = 5 To 45
Sheets("COMMANDE UF1").Select
If VISITEURUF1.ComboBox1.Value = Sheets("COMMANDE UF1").Cells(i, 3).Value Then
With Sheets("LISTEACCOMP").Range("A100").End(xlUp)(2) = ""
Sheets("COMMANDE UF1").Range(Cells(i, 1), Cells(i, 41)).Copy Sheets("LISTEACCOMP").Range("A100").End(xlUp)(2)
End With
Exit Sub
End If
Next
End Sub
j'ai créé un programme de commande de repas il y a une dizaine d'années. Il fonctionne très bien depuis. J'ai apporté une modif avec un nouvel userform avec les mêmes lignes de code fonctionnant sans pb avec un autre userform. cette fois ca ne marche pas : il s'agit de copier une ligne sous condition (variable i) de la feuille "COMMANDE UF1" dans la première ligne vide de la feuille "LISTEACCOMP" , ça me recopie des dizaines de fois la même ligne de la feuille "COMMANDE UF1" dans la feuille "LISTEACCOMP" avant de s'arrêter !?! voici le code :
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Dim i As Long
For i = 5 To 45
Sheets("COMMANDE UF1").Select
If VISITEURUF1.ComboBox1.Value = Sheets("COMMANDE UF1").Cells(i, 3).Value Then
Sheets("COMMANDE UF1").Cells(i, 37).Value = VISITEURUF1.TextBox4.Value
Sheets("COMMANDE UF1").Cells(i, 38).Value = VISITEURUF1.TextBox5.Value
End If
'UF1
Call listeUF1
Next
Application.ScreenUpdating = True
End Sub
Voici le code de la macro "listeUF1" :
Sub listeUF1()
'RENSEIGNER LISTEACCOMP
Dim i As Long
For i = 5 To 45
Sheets("COMMANDE UF1").Select
If VISITEURUF1.ComboBox1.Value = Sheets("COMMANDE UF1").Cells(i, 3).Value Then
With Sheets("LISTEACCOMP").Range("A100").End(xlUp)(2) = ""
Sheets("COMMANDE UF1").Range(Cells(i, 1), Cells(i, 41)).Copy Sheets("LISTEACCOMP").Range("A100").End(xlUp)(2)
End With
Exit Sub
End If
Next
End Sub