Bloc If sans End If
Bonjour a tous, je n'arrive pas a comprendre pourquoi j'ai le message d'erreur Bloc If sans End If. Je pense que le problème vient de la fonction END SUB que j'utilise pour la première fois, car visual basic pointe sur cette fonction en affichant le message.
Je souhaitais quitter l'enregistrement de mon document si la réponse est "Oui".
Si END SUB pose prolème quelle est la fonction qui permet d'interrompre le découlement de la condition SI.
Merci par avance.
C'est mon premier vrai programme que j'améliore de jour en jour, je n'ai pas encore tous les réflexes nécessaires, je n'ai pas jugé bon de vous préparer le fichier, la réponse pour un expérimenté devrait être évidente. Si c'est vraiment nécessaire je vous le ferai suivre.
'*******************************************
'Procédure d'enregistrement
'd'un nouveau document à la
'fin de la base de données
'*******************************************
Private Sub AjoutDoc()
'Contrôle que l'indice vision couvre le taux horaire des frais généraux
Dim IndiceVision As Double
Dim IndiceVisionRef As Double
Dim IndicateurFG As Double
Dim Srep As String
IndiceVisionRef = Worksheets("Resultat Prev").Range("Indice_Vision")
IndicateurFG = Worksheets("Resultat Prev").Range("Indicateur_FG")
IndiceVision = Me.txtIndiceVision.Value
If IndiceVision <= IndicateurFG Then 'Si la condition est remplie, proposer de quitter l'enregistrement du document ou poursuivre
Srep = MsgBox("Attention l'indice vision de ce document ne couvre pas les charges de votre prévisionnel !" & Chr(10) & Chr(10) & _
"Procéder éventuellement à une correction de vos données. Si votre prix de vente n'est pas négociable, il vous reste pour seule solution d'optimiser votre temps de production !" & Chr(10) & Chr(10) & _
"Voulez vous procéder à la correction de vos données ? ", vbYesNo, "Contrôle de la marge minimum")
If Srep = vbYes Then MultiPage1.Value = 1 'Affichage de la deuxième page de l'Userform saisie de documents pour apporter les modifications
End Sub 'Sortie de l'enregistrement du document
End If
End IfBonjour,
Remplace :
If Srep = vbYes Then MultiPage1.Value = 1
End Sub
End IfPar :
If Srep = vbYes Then
MultiPage1.Value = 1 'A la ligne pour éviter l'erreur du If
Exit Sub 'Au lieu de End Sub
End IfCordialement,
Merci beaucoup Sébastien,
Ca me semble évident à présent, Il fallait un regard neuf sur mes lignes d'écritures.
Ca me rassure bien je vais pouvoir continuer.
A bientôt