Erreur programme VBA
nadnad13
Messages postés
22
Date d'inscription
Statut
Membre
Dernière intervention
-
nadnad13 Messages postés 22 Date d'inscription Statut Membre Dernière intervention -
nadnad13 Messages postés 22 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un problème, Lorsque j'exécute le programme suivant :
J'obtient un message d'erreur disant :
Erreur de compilation :
Next sans For
Alors que l'instruction For figure bel et bien dans le programme..
Merci d'avance.
J'ai un problème, Lorsque j'exécute le programme suivant :
For compteur = 1 To n
If Sheets(Feuil1).Cells(i, 4).Value = "Ecl" Then
Nb_depart_Ecl = Nb_depart_Ecl + 1
If Sheets(Feuil1).Cells(i, 4).Value = "PC" Then
Nb_depart_PC = Nb_depart_PC + 1
If Sheets(Feuil1).Cells(i, 4).Value = "Att Clim" Then
Nb_depart_CLIM = Nb_depart_CLIM + 1
If Sheets(Feuil1).Cells(i, 4).Value = "Att Plomb" Or Sheets(Feuil1).Cells(i, 4).Value = "Att secur" Or Sheets(Feuil1).Cells(i, 4).Value = "Att Div" Then
Nb_depart_ATT = Nb_depart_ATT + 1
i = i + 3
Next compteur
J'obtient un message d'erreur disant :
Erreur de compilation :
Next sans For
Alors que l'instruction For figure bel et bien dans le programme..
Merci d'avance.
A voir également:
- Erreur programme VBA
- Programme demarrage windows - Guide
- Message programmé iphone - Guide
- Mettre en veille un programme - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
- Forcer la fermeture d'un programme - Guide
1 réponse
Bonjour
en fait il te manque les end if
tu as plusieurs solutions dont
Cdlmnt
en fait il te manque les end if
tu as plusieurs solutions dont
For compteur = 1 To n If Sheets(Feuil1).Cells(i, 4).Value = "Ecl" Then Nb_depart_Ecl = Nb_depart_Ecl + 1 end if If Sheets(Feuil1).Cells(i, 4).Value = "PC" Then Nb_depart_PC = Nb_depart_PC + 1 end if If Sheets(Feuil1).Cells(i, 4).Value = "Att Clim" Then Nb_depart_CLIM = Nb_depart_CLIM + 1 end if If Sheets(Feuil1).Cells(i, 4).Value = "Att Plomb" Or Sheets(Feuil1).Cells(i, 4).Value = "Att secur" Or Sheets(Feuil1).Cells(i, 4).Value = "Att Div" Then Nb_depart_ATT = Nb_depart_ATT + 1 end if i = i + 3 Next compteur For compteur = 1 To n If Sheets(Feuil1).Cells(i, 4).Value = "Ecl" Then Nb_depart_Ecl = Nb_depart_Ecl + 1 elseIf Sheets(Feuil1).Cells(i, 4).Value = "PC" Then Nb_depart_PC = Nb_depart_PC + 1 elseIf Sheets(Feuil1).Cells(i, 4).Value = "Att Clim" Then Nb_depart_CLIM = Nb_depart_CLIM + 1 elseIf Sheets(Feuil1).Cells(i, 4).Value = "Att Plomb" Or Sheets(Feuil1).Cells(i, 4).Value = "Att secur" Or Sheets(Feuil1).Cells(i, 4).Value = "Att Div" Then Nb_depart_ATT = Nb_depart_ATT + 1 end if i = i + 3 Next compteur For compteur = 1 To n If Sheets(Feuil1).Cells(i, 4).Value = "Ecl" Then Nb_depart_Ecl = Nb_depart_Ecl + 1 If Sheets(Feuil1).Cells(i, 4).Value = "PC" Then Nb_depart_PC = Nb_depart_PC + 1 If Sheets(Feuil1).Cells(i, 4).Value = "Att Clim" Then Nb_depart_CLIM = Nb_depart_CLIM + 1 If Sheets(Feuil1).Cells(i, 4).Value = "Att Plomb" Or Sheets(Feuil1).Cells(i, 4).Value = "Att secur" Or Sheets(Feuil1).Cells(i, 4).Value = "Att Div" Then Nb_depart_ATT = Nb_depart_ATT + 1 i = i + 3 Next compteur For compteur = 1 To n select case Sheets(Feuil1).Cells(i, 4).Value case "Ecl": Nb_depart_Ecl = Nb_depart_Ecl + 1 case "PC" : Nb_depart_PC = Nb_depart_PC + 1 case "Att Clim" : Nb_depart_CLIM = Nb_depart_CLIM + 1 case "Att Plomb" ,"Att secur" , "Att Div" : Nb_depart_ATT = Nb_depart_ATT + 1 end select i = i + 3 next compteur
Cdlmnt
J'ai une autre question svp:
Supposons que j'aie déclaré une variable i que j'ai initialisé à 4 en dehors de la boucle for, et qu'en dedans de cette boucle figure l'instruction i = i + 3 par exemple; en sortant de cette boucle, est ce que i reprend sa valeur initiale ( = 4 ) où est ce qu'elle reçoit une nouvelle valeur dépendamment des modification que celle ci a subit dans la boucle ?
J'étais sure qu'elle changeait de valeur jusqu'à ce que j'obtienne des résultats erronés.. :/
Merci d'avance
Cdlmnt