Problème avec la boucle For ....next i
Résolu
zenastytos
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
-
zenastytos Messages postés 16 Date d'inscription Statut Membre Dernière intervention -
zenastytos Messages postés 16 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous j'ai un petit souci avec mon boucle For
Quand j'exécute le code au lieu de parcourir la plage définie ,il prend directement la derline.
Voici mon code
Merci pour votre aide
Quand j'exécute le code au lieu de parcourir la plage définie ,il prend directement la derline.
Voici mon code
Private Sub ENREGISTREMENT_Click() Dim MAP As String If Dat_Acht.Value = "" Then MsgBox ("Veuillez ajoutez un produit") Exit Sub End If If Date_paiemt.Value = "" Then Date_paiemt.Value = Date End If If Sheets("CLIENT").Cells(i + 1, 3) = "" Then Sheets("CLIENT").Cells(i + 1, 3) = 0 End If If Mt_Glb_Prdt.Value = "" Then Mt_Glb_Prdt.Value = 0 End If If 10000 <= Mt_Glb_Prdt.Value And Mt_Glb_Prdt.Value <= 50000 Then Mt_net.Value = 0.95 * Mt_Glb_Prdt.Value ElseIf Mt_Glb_Prdt > 50000 Then Mt_net.Value = 0.9 * Mt_Glb_Prdt.Value Else Mt_net.Value = Mt_Glb_Prdt.Value End If If Mt_Glb_Prdt > 50000 Then remise.Value = 0.1 * Mt_Glb_Prdt.Value ElseIf 10000 <= Mt_Glb_Prdt.Value And Mt_Glb_Prdt.Value <= 50000 Then remise.Value = 0.05 * Mt_Glb_Prdt.Value Else remise.Value = 0 End If Sheets("VENTE").Cells(2, 12) = remise.Value Sheets("VENTE").Cells(2, 13) = Mt_net.Value If Nom_Clt.Visible = True Then For i = 1 To Derline(1, 1) If (Nom_Clt.Value = Sheets("CLIENT").Cells(i + 1, 1)) Then Sheets("CLIENT").Cells(i + 1, 3) = Sheets("CLIENT").Cells(i + 1, 3) + Mt_net.Value Sheets("CLIENT").Cells(i + 1, 5) = Date_paiemt.Value MAP = InputBox("combien le client pense payé le " & (Date_paiemt.Value) & "?") Sheets("CLIENT").Cells(i + 1, 6) = MAP Range("G2").Select ActiveCell.FormulaR1C1 = "=RC[-4]-RC[-1]" Nom_Clt.Value = "" Télphon_Clt.Value = "" Date_paiemt.Value = "" Exit Sub End If Sheets("CLIENT").Select Rows("2:2").Select Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove Sheets("CLIENT").Cells(i + 1, 1) = Nom_Clt.Value Sheets("CLIENT").Cells(i + 1, 2) = Télphon_Clt.Value Sheets("CLIENT").Cells(i + 1, 3) = Mt_net.Value Sheets("CLIENT").Cells(i + 1, 4) = Dat_Acht.Value Sheets("CLIENT").Cells(i + 1, 5) = Date_paiemt.Value MAP = InputBox("combien le client pense payé le " & Date_paiemt.Value & "?") Sheets("CLIENT").Cells(i + 1, 6) = MAP Range("G2").Select ActiveCell.FormulaR1C1 = "=RC[-4]-RC[-1]" Nom_Clt.Value = "" Télphon_Clt.Value = "" Date_paiemt.Value = "" Exit Sub Next i End If End Sub
Merci pour votre aide
A voir également:
- Problème avec la boucle For ....next i
- Downloader for pc - Télécharger - Téléchargement & Transfert
- O ou i pour allumer - Forum Facebook
- Idm for mac - Télécharger - Téléchargement & Transfert
- Ou i ou a a ✓ - Forum Musique / Radio / Clip
- Copytrans heic for windows - Télécharger - Visionnage & Diaporama
2 réponses
Bonjour,
Derline n'est ni déclarée ni définie nulle part dans ton code. Regarde ce que vaut Derline(1, 1) (un tableau ???) au moment de l'exécution du code et tu auras sans doute la réponse...
À moins que ce ne soit une variable publique mais il faudrait savoir où tu la déclares et quand/comment elle est définie...
Derline n'est ni déclarée ni définie nulle part dans ton code. Regarde ce que vaut Derline(1, 1) (un tableau ???) au moment de l'exécution du code et tu auras sans doute la réponse...
À moins que ce ne soit une variable publique mais il faudrait savoir où tu la déclares et quand/comment elle est définie...
zenastytos
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
oui oui je l'ai déclaré dans un autre module en tant que publique
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour, ta boucle ne sera jamais exécutée plusieurs fois, à cause du
Exit Suben ligne 67. est-ce ce que tu souhaites?