Dans un classeur de planning, 1 feuille par mois + quelques feuilles de
synthèse, j'ai une macro qui initialise les cellules des week ends
(Etiquette de colonne = Samedi ou dimanche). Je veux que cette macro ne
s'éxécute pas sur les feuilles dont les noms sont ci-dessous, d'où ce
petit bout de code qui me paraissait tout à fait sympathique.....jusqu'à
l'éxécution !! J'ai un message "next sans for"...Donc je suppose qu'on
ne peut pas mettre un next dans un if mais alors où je peux le mettre ??
(pas de réponse désobligeante svp :-)))))
For Each c In Worksheets
If activesheets.Name = "Aide" Or activesheets.Name = "Stats" _
Or activesheets.Name = "Paramètres" Then
Next c
End If
tatata
bla bla
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
AV
Une solution :
For Each c In Worksheets If activesheet.Name <>"Aide" and activesheet.Name <>"Stats" _ and activesheet.Name <> "Paramètres" Then 'balabla... End If next
AV
Une solution :
For Each c In Worksheets
If activesheet.Name <>"Aide" and activesheet.Name <>"Stats" _
and activesheet.Name <> "Paramètres" Then
'balabla...
End If
next
For Each c In Worksheets If activesheet.Name <>"Aide" and activesheet.Name <>"Stats" _ and activesheet.Name <> "Paramètres" Then 'balabla... End If next
AV
LSteph
Bonsoir Thierry,
De façon générale on referme d'abord la dernière boite ouverte et comme ici ton if est dans la boucle le end if doit y être aussi ! Visiblement, tu n'appelle aucune commande dans ta boucle???? ici exemple 'maroutine Sinon en l'occurence (outre qu'en l'absence de else l'on pourrait mettre tout sur une ligne sans end if mais pour le coup):
Sub masub() Dim sh as worksheet For each sh in Activeworkbook.sheets if Not Ucase(sh.name) = "AIDE" and Not Ucase(sh.name)="STATS" then 'maroutine end if Next End sub
'lSteph "ThierryP" a écrit dans le message de news: %
Bonsoir bonsoir tout le monde !
Dans un classeur de planning, 1 feuille par mois + quelques feuilles de synthèse, j'ai une macro qui initialise les cellules des week ends (Etiquette de colonne = Samedi ou dimanche). Je veux que cette macro ne s'éxécute pas sur les feuilles dont les noms sont ci-dessous, d'où ce petit bout de code qui me paraissait tout à fait sympathique.....jusqu'à l'éxécution !! J'ai un message "next sans for"...Donc je suppose qu'on ne peut pas mettre un next dans un if mais alors où je peux le mettre ?? (pas de réponse désobligeante svp :-)))))
For Each c In Worksheets If activesheets.Name = "Aide" Or activesheets.Name = "Stats" _ Or activesheets.Name = "Paramètres" Then Next c End If tatata bla bla
next
D'avance merci
@+ thierryp :-)
Bonsoir Thierry,
De façon générale on referme d'abord la dernière boite ouverte
et comme ici ton if est dans la boucle
le end if doit y être aussi !
Visiblement, tu n'appelle aucune commande dans ta boucle????
ici exemple 'maroutine
Sinon en l'occurence (outre qu'en l'absence de else l'on pourrait
mettre tout sur une ligne sans end if mais pour le coup):
Sub masub()
Dim sh as worksheet
For each sh in Activeworkbook.sheets
if Not Ucase(sh.name) = "AIDE" and Not Ucase(sh.name)="STATS" then
'maroutine
end if
Next
End sub
'lSteph
"ThierryP" <thierryp_NO_SPAM@club-internet.fr> a écrit dans le message de
news: %23tKWsQ0dFHA.2520@TK2MSFTNGP09.phx.gbl...
Bonsoir bonsoir tout le monde !
Dans un classeur de planning, 1 feuille par mois + quelques feuilles de
synthèse, j'ai une macro qui initialise les cellules des week ends
(Etiquette de colonne = Samedi ou dimanche). Je veux que cette macro ne
s'éxécute pas sur les feuilles dont les noms sont ci-dessous, d'où ce
petit bout de code qui me paraissait tout à fait sympathique.....jusqu'à
l'éxécution !! J'ai un message "next sans for"...Donc je suppose qu'on ne
peut pas mettre un next dans un if mais alors où je peux le mettre ?? (pas
de réponse désobligeante svp :-)))))
For Each c In Worksheets
If activesheets.Name = "Aide" Or activesheets.Name = "Stats" _
Or activesheets.Name = "Paramètres" Then
Next c
End If
tatata
bla bla
De façon générale on referme d'abord la dernière boite ouverte et comme ici ton if est dans la boucle le end if doit y être aussi ! Visiblement, tu n'appelle aucune commande dans ta boucle???? ici exemple 'maroutine Sinon en l'occurence (outre qu'en l'absence de else l'on pourrait mettre tout sur une ligne sans end if mais pour le coup):
Sub masub() Dim sh as worksheet For each sh in Activeworkbook.sheets if Not Ucase(sh.name) = "AIDE" and Not Ucase(sh.name)="STATS" then 'maroutine end if Next End sub
'lSteph "ThierryP" a écrit dans le message de news: %
Bonsoir bonsoir tout le monde !
Dans un classeur de planning, 1 feuille par mois + quelques feuilles de synthèse, j'ai une macro qui initialise les cellules des week ends (Etiquette de colonne = Samedi ou dimanche). Je veux que cette macro ne s'éxécute pas sur les feuilles dont les noms sont ci-dessous, d'où ce petit bout de code qui me paraissait tout à fait sympathique.....jusqu'à l'éxécution !! J'ai un message "next sans for"...Donc je suppose qu'on ne peut pas mettre un next dans un if mais alors où je peux le mettre ?? (pas de réponse désobligeante svp :-)))))
For Each c In Worksheets If activesheets.Name = "Aide" Or activesheets.Name = "Stats" _ Or activesheets.Name = "Paramètres" Then Next c End If tatata bla bla
next
D'avance merci
@+ thierryp :-)
Thierry
Waooow ! Décidément les gardiens du temple sont toujours aussi vigilants et rapides :-))))), et les réponses paraissent tellement évidentes quand on les lit !! Un jour peut-être moi aussi .......
Merci pour vos réponses !
@+ thierryp :-)))
Bonsoir bonsoir tout le monde !
Dans un classeur de planning, 1 feuille par mois + quelques feuilles de synthèse, j'ai une macro qui initialise les cellules des week ends (Etiquette de colonne = Samedi ou dimanche). Je veux que cette macro ne s'éxécute pas sur les feuilles dont les noms sont ci-dessous, d'où ce petit bout de code qui me paraissait tout à fait sympathique.....jusqu'à l'éxécution !! J'ai un message "next sans for"...Donc je suppose qu'on ne peut pas mettre un next dans un if mais alors où je peux le mettre ?? (pas de réponse désobligeante svp :-)))))
For Each c In Worksheets If activesheets.Name = "Aide" Or activesheets.Name = "Stats" _ Or activesheets.Name = "Paramètres" Then Next c End If tatata bla bla
next
D'avance merci
@+ thierryp :-)
Waooow !
Décidément les gardiens du temple sont toujours aussi vigilants et
rapides :-))))), et les réponses paraissent tellement évidentes quand on
les lit !! Un jour peut-être moi aussi .......
Merci pour vos réponses !
@+ thierryp :-)))
Bonsoir bonsoir tout le monde !
Dans un classeur de planning, 1 feuille par mois + quelques feuilles de
synthèse, j'ai une macro qui initialise les cellules des week ends
(Etiquette de colonne = Samedi ou dimanche). Je veux que cette macro ne
s'éxécute pas sur les feuilles dont les noms sont ci-dessous, d'où ce
petit bout de code qui me paraissait tout à fait sympathique.....jusqu'à
l'éxécution !! J'ai un message "next sans for"...Donc je suppose qu'on
ne peut pas mettre un next dans un if mais alors où je peux le mettre ??
(pas de réponse désobligeante svp :-)))))
For Each c In Worksheets
If activesheets.Name = "Aide" Or activesheets.Name = "Stats" _
Or activesheets.Name = "Paramètres" Then
Next c
End If
tatata
bla bla
Waooow ! Décidément les gardiens du temple sont toujours aussi vigilants et rapides :-))))), et les réponses paraissent tellement évidentes quand on les lit !! Un jour peut-être moi aussi .......
Merci pour vos réponses !
@+ thierryp :-)))
Bonsoir bonsoir tout le monde !
Dans un classeur de planning, 1 feuille par mois + quelques feuilles de synthèse, j'ai une macro qui initialise les cellules des week ends (Etiquette de colonne = Samedi ou dimanche). Je veux que cette macro ne s'éxécute pas sur les feuilles dont les noms sont ci-dessous, d'où ce petit bout de code qui me paraissait tout à fait sympathique.....jusqu'à l'éxécution !! J'ai un message "next sans for"...Donc je suppose qu'on ne peut pas mettre un next dans un if mais alors où je peux le mettre ?? (pas de réponse désobligeante svp :-)))))
For Each c In Worksheets If activesheets.Name = "Aide" Or activesheets.Name = "Stats" _ Or activesheets.Name = "Paramètres" Then Next c End If tatata bla bla