Exécuter la suite de l' equation après avoir utiliser exit sub

Résolu/Fermé
zenastytos Messages postés 16 Date d'inscription samedi 20 décembre 2014 Statut Membre Dernière intervention 26 mai 2017 - 23 mai 2017 à 06:01
Whismeril Messages postés 19026 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 20 avril 2024 - 23 mai 2017 à 07:14
Bonjour voila mon problème ,j'aimerais exécuter les codes derrière un bouton que j'ai créer dans un userforme . j'ai poser des conditions qui lorsqu'ils ne sont pas vérifier l'exécution doit s’arrêter ,mais le problème est que si les conditions sont respectées la suite du code ne s'execute plus.
voici le code en question . merci

Private Sub Enrgstr_Click()

If Qtité_cmde.Value = "" Then MsgBox ("veuillez entré unne quantité")
Exit Sub
If prix_achat.Value = "" Then MsgBox ("veuillez entré le prix d'achat")
Exit Sub


'enrégistrement des produits comandées
For i = 1 To Derline(1, 1)
If (Nom_prdt.Value = Sheets("PRODUIT").Cells(i + 1, 1)) Then
Sheets("PRODUIT").Cells(i + 1, 4) = Sheets("PRODUIT").Cells(i + 1, 4) + Qtité_cmde.Value
End If

Next i
If (flag = False) Then

Rows("2:2").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets("PRODUIT").Cells(2, 1) = Nom_prdt.Value
Sheets("PRODUIT").Cells(2, 2) = Type_prdt.Value
Sheets("PRODUIT").Cells(2, 3) = code_prdt.Value
Sheets("PRODUIT").Cells(2, 4) = Qtité_cmde.Value
Sheets("PRODUIT").Cells(2, 6) = prix_achat.Value
Sheets("PRODUIT").Cells(2, 8) = Dat_achat.Value
Sheets("PRODUIT").Cells(2, 9) = Dat_premp.Value
Sheets("PRODUIT").Cells(2, 10) = Nom_grosis.Value
Sheets("PRODUIT").Cells(2, 11) = Adres_gross.Value

End If

Nom_prdt.Value = ""
Type_prdt.Value = ""
code_prdt.Value = ""
Qtité_cmde.Value = ""
prix_achat.Value = ""
Dat_achat.Value = ""
Dat_premp.Value = ""
Nom_grosis.Value = ""
Adres_gross.Value = ""

Rows("2:2").Select
With Selection.Font
.Name = "Calibri"
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
Selection.Font.Bold = False
Selection.Font.Italic = False
End Sub
A voir également:

1 réponse

Whismeril Messages postés 19026 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 20 avril 2024 931
23 mai 2017 à 06:51
Bonjour

si tu veux faire plusieurs instruction dans une boucle If, il faut faut délimiter ces instructions avec un End if et éventuellement un Else
If Qtité_cmde.Value = "" Then
     MsgBox ("veuillez entré unne quantité")
     Exit Sub
ElseIf prix_achat.Value = "" Then
     MsgBox ("veuillez entré le prix d'achat")
     Exit Sub
End if



Par contre, il faut enlever les noms d'accent dans les variables ou noms d'objets.
Il suffit que par besoin ou accident tu changes la langue de ton PC et ta macro sera cassée.
1
zenastytos Messages postés 16 Date d'inscription samedi 20 décembre 2014 Statut Membre Dernière intervention 26 mai 2017
23 mai 2017 à 07:02
merci whismeril,mon problème est résolu. et merci pour le conseil
0
Whismeril Messages postés 19026 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 20 avril 2024 931
23 mai 2017 à 07:14
De rien
0