Bonjour à tous
j'ai trouvé sur ce forum comment avec une mise en forme conditionnelle
faire ressortir la semaine en cours. Est-il possible de faire la même
chose à un onglet ?? j'ai un onglet par semaine de l'année. Et si en
plus lorsque j'ouvre mon fichier ça pouvait être sur cet onglet se
serait royal.
merci d'avance à tous
Marc
merci bcp pour ce code que j'au réussi à faire fonctionner malgré mon petit niveau .... Il s'ouvre automatiquement sur l'onglet de la semaine en cours
Pas de quoi.
mais je n'arrive par contre pas à coloriser l'onglet en question.
La coloration des onglets n'est pas disponible avec ma version (XL 2000), donc je ne peux pas t'aider là-dessus. Mais il y aura une âme charitable qui te dira comment (je pense qu'il faut avoir une version assez récente).
Salutations,
Daniel M.
Pour colorier l'onglet de la feuille active :
ActiveSheet.Tab.ColorIndex = 25 'par exemple
à insérer dans ta macro après :
Worksheets(nomOnglet).Activate
--
Gaenonius
Bonjour,
merci bcp pour ce code que j'au réussi à faire fonctionner malgré mon
petit niveau .... Il s'ouvre automatiquement sur l'onglet de la semaine
en cours
Pas de quoi.
mais je n'arrive par contre pas à coloriser l'onglet en
question.
La coloration des onglets n'est pas disponible avec ma version (XL 2000), donc
je ne peux pas t'aider là-dessus. Mais il y aura une âme charitable qui te dira
comment (je pense qu'il faut avoir une version assez récente).
merci bcp pour ce code que j'au réussi à faire fonctionner malgré mon petit niveau .... Il s'ouvre automatiquement sur l'onglet de la semaine en cours
Pas de quoi.
mais je n'arrive par contre pas à coloriser l'onglet en question.
La coloration des onglets n'est pas disponible avec ma version (XL 2000), donc je ne peux pas t'aider là-dessus. Mais il y aura une âme charitable qui te dira comment (je pense qu'il faut avoir une version assez récente).
Salutations,
Daniel M.
MarcT
Voila la macro modifiée qui devrait faire ce que tu demandes. Tu devras peut-etre adapter les couleurs suivant le nombre de cycles.
j-p
Private Sub Workbook_Open() Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00") On Error Resume Next Worksheets(nomOnglet).Activate If Err.Number <> 0 Then MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille inexistante" Err.Clear Else Worksheets(nomOnglet).Tab.ColorIndex = 6 For each feuil in Worksheets if feuil.name<> nomOnglet then if feuil.range("B1").value =< 12 then feuil.Tab.ColorIndex=5 if feuil.range("B1").value> 12 and feuil.Range("B1").value =<24 then feuil.Tab.ColorIndex=3 ' Etc... ' end if next
End If
End Sub
Désolé ça ne fonctionne pas !!!
et je n'arrive pas à comprendre pourquoi pour arranger ... Ne serait ce pas parcque B1 renvoie la valeur : cycle 1/12; cycle 2/12; ect... j'ai essayé de bidouillé autour de ça mais je ne côse pas bien VBA et il a pas du comprendre... merci de ton aide @+ Marc
Voila la macro modifiée qui devrait faire ce que tu demandes. Tu devras peut-etre adapter les
couleurs suivant le nombre de cycles.
j-p
Private Sub Workbook_Open()
Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00")
On Error Resume Next
Worksheets(nomOnglet).Activate
If Err.Number <> 0 Then
MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille
inexistante"
Err.Clear
Else
Worksheets(nomOnglet).Tab.ColorIndex = 6
For each feuil in Worksheets
if feuil.name<> nomOnglet then
if feuil.range("B1").value =< 12 then feuil.Tab.ColorIndex=5
if feuil.range("B1").value> 12 and feuil.Range("B1").value =<24 then feuil.Tab.ColorIndex=3
' Etc...
'
end if
next
End If
End Sub
Désolé ça ne fonctionne pas !!!
et je n'arrive pas à comprendre pourquoi pour arranger ...
Ne serait ce pas parcque B1 renvoie la valeur : cycle 1/12; cycle 2/12;
ect... j'ai essayé de bidouillé autour de ça mais je ne côse pas bien
VBA et il a pas du comprendre...
merci de ton aide
@+
Marc
Voila la macro modifiée qui devrait faire ce que tu demandes. Tu devras peut-etre adapter les couleurs suivant le nombre de cycles.
j-p
Private Sub Workbook_Open() Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00") On Error Resume Next Worksheets(nomOnglet).Activate If Err.Number <> 0 Then MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille inexistante" Err.Clear Else Worksheets(nomOnglet).Tab.ColorIndex = 6 For each feuil in Worksheets if feuil.name<> nomOnglet then if feuil.range("B1").value =< 12 then feuil.Tab.ColorIndex=5 if feuil.range("B1").value> 12 and feuil.Range("B1").value =<24 then feuil.Tab.ColorIndex=3 ' Etc... ' end if next
End If
End Sub
Désolé ça ne fonctionne pas !!!
et je n'arrive pas à comprendre pourquoi pour arranger ... Ne serait ce pas parcque B1 renvoie la valeur : cycle 1/12; cycle 2/12; ect... j'ai essayé de bidouillé autour de ça mais je ne côse pas bien VBA et il a pas du comprendre... merci de ton aide @+ Marc
JpPradier
Oui, évidemment, je croyais qu'il y avait juste le numéro de cycle en B1. Modification ci-dessous.
j-p
Private Sub Workbook_Open() Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00") On Error Resume Next Worksheets(nomOnglet).Activate If Err.Number <> 0 Then MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille inexistante" Err.Clear Else Worksheets(nomOnglet).Tab.ColorIndex = 6 For each feuil in Worksheets if feuil.name<> nomOnglet then numCycle = feuil.Range("b1").Value numCycle = Mid(numCycle, 1 + InStr(numCycle, " ")) numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
if numCycle =< 12 then feuil.Tab.ColorIndex=5 if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3 ' Etc... ' end if next
End If
End Sub
Oui, évidemment, je croyais qu'il y avait juste le numéro de cycle en B1.
Modification ci-dessous.
j-p
Private Sub Workbook_Open()
Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00")
On Error Resume Next
Worksheets(nomOnglet).Activate
If Err.Number <> 0 Then
MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille
inexistante"
Err.Clear
Else
Worksheets(nomOnglet).Tab.ColorIndex = 6
For each feuil in Worksheets
if feuil.name<> nomOnglet then
numCycle = feuil.Range("b1").Value
numCycle = Mid(numCycle, 1 + InStr(numCycle, " "))
numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
if numCycle =< 12 then feuil.Tab.ColorIndex=5
if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3
' Etc...
'
end if
next
Oui, évidemment, je croyais qu'il y avait juste le numéro de cycle en B1. Modification ci-dessous.
j-p
Private Sub Workbook_Open() Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00") On Error Resume Next Worksheets(nomOnglet).Activate If Err.Number <> 0 Then MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille inexistante" Err.Clear Else Worksheets(nomOnglet).Tab.ColorIndex = 6 For each feuil in Worksheets if feuil.name<> nomOnglet then numCycle = feuil.Range("b1").Value numCycle = Mid(numCycle, 1 + InStr(numCycle, " ")) numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
if numCycle =< 12 then feuil.Tab.ColorIndex=5 if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3 ' Etc... ' end if next
End If
End Sub
MarcT
Oui, évidemment, je croyais qu'il y avait juste le numéro de cycle en B1. Modification ci-dessous.
j-p
Private Sub Workbook_Open() Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00") On Error Resume Next Worksheets(nomOnglet).Activate If Err.Number <> 0 Then MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille inexistante" Err.Clear Else Worksheets(nomOnglet).Tab.ColorIndex = 6 For each feuil in Worksheets if feuil.name<> nomOnglet then numCycle = feuil.Range("b1").Value numCycle = Mid(numCycle, 1 + InStr(numCycle, " ")) numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
if numCycle =< 12 then feuil.Tab.ColorIndex=5 if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3 ' Etc... ' end if next
End If
End Sub
Merci bcp pour ta patience et ta rapidité. ça ne fonctionne tjrs pas ...
Je ne comprends pas !!! je ne suis pê (sans doute) pas très doué ... Je laisse tomber pour ce soir en tt cas merci @+ Marc
Oui, évidemment, je croyais qu'il y avait juste le numéro de cycle en B1.
Modification ci-dessous.
j-p
Private Sub Workbook_Open()
Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00")
On Error Resume Next
Worksheets(nomOnglet).Activate
If Err.Number <> 0 Then
MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille
inexistante"
Err.Clear
Else
Worksheets(nomOnglet).Tab.ColorIndex = 6
For each feuil in Worksheets
if feuil.name<> nomOnglet then
numCycle = feuil.Range("b1").Value
numCycle = Mid(numCycle, 1 + InStr(numCycle, " "))
numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
if numCycle =< 12 then feuil.Tab.ColorIndex=5
if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3
' Etc...
'
end if
next
End If
End Sub
Merci bcp pour ta patience et ta rapidité. ça ne fonctionne tjrs pas ...
Je ne comprends pas !!! je ne suis pê (sans doute) pas très doué ...
Je laisse tomber pour ce soir
en tt cas merci @+
Marc
Oui, évidemment, je croyais qu'il y avait juste le numéro de cycle en B1. Modification ci-dessous.
j-p
Private Sub Workbook_Open() Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00") On Error Resume Next Worksheets(nomOnglet).Activate If Err.Number <> 0 Then MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille inexistante" Err.Clear Else Worksheets(nomOnglet).Tab.ColorIndex = 6 For each feuil in Worksheets if feuil.name<> nomOnglet then numCycle = feuil.Range("b1").Value numCycle = Mid(numCycle, 1 + InStr(numCycle, " ")) numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
if numCycle =< 12 then feuil.Tab.ColorIndex=5 if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3 ' Etc... ' end if next
End If
End Sub
Merci bcp pour ta patience et ta rapidité. ça ne fonctionne tjrs pas ...
Je ne comprends pas !!! je ne suis pê (sans doute) pas très doué ... Je laisse tomber pour ce soir en tt cas merci @+ Marc
MarcT
Oui, évidemment, je croyais qu'il y avait juste le numéro de cycle en B1. Modification ci-dessous.
j-p
Private Sub Workbook_Open() Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00") On Error Resume Next Worksheets(nomOnglet).Activate If Err.Number <> 0 Then MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille inexistante" Err.Clear Else Worksheets(nomOnglet).Tab.ColorIndex = 6 For each feuil in Worksheets if feuil.name<> nomOnglet then numCycle = feuil.Range("b1").Value numCycle = Mid(numCycle, 1 + InStr(numCycle, " ")) numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
if numCycle =< 12 then feuil.Tab.ColorIndex=5 if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3 ' Etc... ' end if next
End If
End Sub
Bonjour,
De retour avec mes pbs de couleures !!! en fait le code fonctionne avec l'onglet de la semaine en cours en jaune, mais il ne colorie pas les autres onglets en fonction du cycle, ils les colories tous de la même couleur !!! j'ai essayé de rajouter des lignes là ou tu mettais ect.. ça change la couleure de tous les onglets j'espère que je suis assez clair dans la présentation du pb merci encore pour ton aide cordialement Marc
Oui, évidemment, je croyais qu'il y avait juste le numéro de cycle en B1.
Modification ci-dessous.
j-p
Private Sub Workbook_Open()
Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00")
On Error Resume Next
Worksheets(nomOnglet).Activate
If Err.Number <> 0 Then
MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille
inexistante"
Err.Clear
Else
Worksheets(nomOnglet).Tab.ColorIndex = 6
For each feuil in Worksheets
if feuil.name<> nomOnglet then
numCycle = feuil.Range("b1").Value
numCycle = Mid(numCycle, 1 + InStr(numCycle, " "))
numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
if numCycle =< 12 then feuil.Tab.ColorIndex=5
if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3
' Etc...
'
end if
next
End If
End Sub
Bonjour,
De retour avec mes pbs de couleures !!!
en fait le code fonctionne avec l'onglet de la semaine en cours en
jaune, mais il ne colorie pas les autres onglets en fonction du cycle,
ils les colories tous de la même couleur !!! j'ai essayé de rajouter des
lignes là ou tu mettais ect.. ça change la couleure de tous les onglets
j'espère que je suis assez clair dans la présentation du pb
merci encore pour ton aide
cordialement
Marc
Oui, évidemment, je croyais qu'il y avait juste le numéro de cycle en B1. Modification ci-dessous.
j-p
Private Sub Workbook_Open() Dim nomOnglet As String
nomOnglet = "S" & Format(ISOWeekNum(Date), "00") On Error Resume Next Worksheets(nomOnglet).Activate If Err.Number <> 0 Then MsgBox "Aucun onglet ne porte le nom " & nomOnglet, vbInformation, "Feuille inexistante" Err.Clear Else Worksheets(nomOnglet).Tab.ColorIndex = 6 For each feuil in Worksheets if feuil.name<> nomOnglet then numCycle = feuil.Range("b1").Value numCycle = Mid(numCycle, 1 + InStr(numCycle, " ")) numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
if numCycle =< 12 then feuil.Tab.ColorIndex=5 if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3 ' Etc... ' end if next
End If
End Sub
Bonjour,
De retour avec mes pbs de couleures !!! en fait le code fonctionne avec l'onglet de la semaine en cours en jaune, mais il ne colorie pas les autres onglets en fonction du cycle, ils les colories tous de la même couleur !!! j'ai essayé de rajouter des lignes là ou tu mettais ect.. ça change la couleure de tous les onglets j'espère que je suis assez clair dans la présentation du pb merci encore pour ton aide cordialement Marc
JpPradier
Bonjour Marc
Ca dépend comment tu as écrit les lignes suivantes. Tu as combien de plages de cycles ? Un exemple plus détaillé ci-dessous.
j-p
if numCycle =< 12 then feuil.Tab.ColorIndex=5 if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3 if numCycle> 24 and numCycle =<36 then feuil.Tab.ColorIndex=7 if numCycle> 36 and numCycle =<48 then feuil.Tab.ColorIndex=9
Bonjour Marc
Ca dépend comment tu as écrit les lignes suivantes. Tu as combien de plages de cycles ?
Un exemple plus détaillé ci-dessous.
j-p
if numCycle =< 12 then feuil.Tab.ColorIndex=5
if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3
if numCycle> 24 and numCycle =<36 then feuil.Tab.ColorIndex=7
if numCycle> 36 and numCycle =<48 then feuil.Tab.ColorIndex=9
Ca dépend comment tu as écrit les lignes suivantes. Tu as combien de plages de cycles ? Un exemple plus détaillé ci-dessous.
j-p
if numCycle =< 12 then feuil.Tab.ColorIndex=5 if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3 if numCycle> 24 and numCycle =<36 then feuil.Tab.ColorIndex=7 if numCycle> 36 and numCycle =<48 then feuil.Tab.ColorIndex=9
MarcT
Bonjour Marc
Ca dépend comment tu as écrit les lignes suivantes. Tu as combien de plages de cycles ? Un exemple plus détaillé ci-dessous.
j-p
if numCycle =< 12 then feuil.Tab.ColorIndex=5 if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3 if numCycle> 24 and numCycle =<36 then feuil.Tab.ColorIndex=7 if numCycle> 36 and numCycle =<48 then feuil.Tab.ColorIndex=9
Bonjour JP,
merci de ta patience. Je n'y arrive tjrs pas mais je crois avoir compris !!!! j'ai mal expliqué le pb... Ce classeur est un planning composé d'un onglet par semaine. Ce planning fonctionne par cycle de 12 semaines et est donc n° ainsi cycle 1/12; cycle 2/12; ... cycle 12/12 et reviens à cycle 1/12 ect ... c pour dinstingués les différents cycle que je souhaite qu'il se colorise; Je le fais actuellement à la main mais ce que je découvre d'excel me pousse à "fignoler" si trop compliqué ou manque de temps laisse tomber en tt cas merci à toi @+ cordialement marc
Bonjour Marc
Ca dépend comment tu as écrit les lignes suivantes. Tu as combien de plages de cycles ?
Un exemple plus détaillé ci-dessous.
j-p
if numCycle =< 12 then feuil.Tab.ColorIndex=5
if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3
if numCycle> 24 and numCycle =<36 then feuil.Tab.ColorIndex=7
if numCycle> 36 and numCycle =<48 then feuil.Tab.ColorIndex=9
Bonjour JP,
merci de ta patience. Je n'y arrive tjrs pas mais je crois avoir compris
!!!! j'ai mal expliqué le pb... Ce classeur est un planning composé d'un
onglet par semaine. Ce planning fonctionne par cycle de 12 semaines et
est donc n° ainsi cycle 1/12; cycle 2/12; ... cycle 12/12 et reviens à
cycle 1/12 ect ... c pour dinstingués les différents cycle que je
souhaite qu'il se colorise; Je le fais actuellement à la main mais ce
que je découvre d'excel me pousse à "fignoler"
si trop compliqué ou manque de temps laisse tomber
en tt cas merci à toi
@+
cordialement
marc
Ca dépend comment tu as écrit les lignes suivantes. Tu as combien de plages de cycles ? Un exemple plus détaillé ci-dessous.
j-p
if numCycle =< 12 then feuil.Tab.ColorIndex=5 if numCycle> 12 and numCycle =<24 then feuil.Tab.ColorIndex=3 if numCycle> 24 and numCycle =<36 then feuil.Tab.ColorIndex=7 if numCycle> 36 and numCycle =<48 then feuil.Tab.ColorIndex=9
Bonjour JP,
merci de ta patience. Je n'y arrive tjrs pas mais je crois avoir compris !!!! j'ai mal expliqué le pb... Ce classeur est un planning composé d'un onglet par semaine. Ce planning fonctionne par cycle de 12 semaines et est donc n° ainsi cycle 1/12; cycle 2/12; ... cycle 12/12 et reviens à cycle 1/12 ect ... c pour dinstingués les différents cycle que je souhaite qu'il se colorise; Je le fais actuellement à la main mais ce que je découvre d'excel me pousse à "fignoler" si trop compliqué ou manque de temps laisse tomber en tt cas merci à toi @+ cordialement marc
JpPradier
Bonjour Marc
Ok je crois avoir compris l'organisation de ton classeur : il faut une couleur par cycle de 1 à 12. Je suppose que tes cycles sont entiers ( de 1 à 12) et commencent toujours par 1. Remplace de 'For each' jusque 'Next' par ce qu'il y a cidessous.
j-p
Couleur=array(5,7,12,3,9) ' mettre ici les couleurs voulues cpt=1 For each feuil in Worksheets if feuil.name<> nomOnglet then numCycle = feuil.Range("b1").Value numCycle = Mid(numCycle, 1 + InStr(numCycle, " ")) numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1) feuil.Tab.ColorIndex=couleur(1) if numCycle then cpt=cpt+1
end if next
Bonjour Marc
Ok je crois avoir compris l'organisation de ton classeur : il faut une couleur par cycle de 1 à 12.
Je suppose que tes cycles sont entiers ( de 1 à 12) et commencent toujours par 1. Remplace de 'For
each' jusque 'Next' par ce qu'il y a cidessous.
j-p
Couleur=array(5,7,12,3,9) ' mettre ici les couleurs voulues
cpt=1
For each feuil in Worksheets
if feuil.name<> nomOnglet then
numCycle = feuil.Range("b1").Value
numCycle = Mid(numCycle, 1 + InStr(numCycle, " "))
numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
feuil.Tab.ColorIndex=couleur(1)
if numCycle then cpt=cpt+1
Ok je crois avoir compris l'organisation de ton classeur : il faut une couleur par cycle de 1 à 12. Je suppose que tes cycles sont entiers ( de 1 à 12) et commencent toujours par 1. Remplace de 'For each' jusque 'Next' par ce qu'il y a cidessous.
j-p
Couleur=array(5,7,12,3,9) ' mettre ici les couleurs voulues cpt=1 For each feuil in Worksheets if feuil.name<> nomOnglet then numCycle = feuil.Range("b1").Value numCycle = Mid(numCycle, 1 + InStr(numCycle, " ")) numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1) feuil.Tab.ColorIndex=couleur(1) if numCycle then cpt=cpt+1
end if next
MarcT
Bonjour Marc
Ok je crois avoir compris l'organisation de ton classeur : il faut une couleur par cycle de 1 à 12. Je suppose que tes cycles sont entiers ( de 1 à 12) et commencent toujours par 1. Remplace de 'For each' jusque 'Next' par ce qu'il y a cidessous.
j-p
Couleur=array(5,7,12,3,9) ' mettre ici les couleurs voulues cpt=1 For each feuil in Worksheets if feuil.name<> nomOnglet then numCycle = feuil.Range("b1").Value numCycle = Mid(numCycle, 1 + InStr(numCycle, " ")) numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1) feuil.Tab.ColorIndex=couleur(1) if numCycle then cpt=cpt+1
end if next
Bonjour,
encore moi !!! et non ça ne commence pas tjrs par 1, j'aurais du le préciser ... désolé. Sinon l'essai semble concluant en partie: il colorie bien 1 1er série correctement et la suivante il ne colorie que 4 onglets !!! alors que la série en B1 indique le bon n° de cycle. Pour cette année le 1er cycle est 9 correspondant à la semaine 53 de 2004 du 27/12/2004 au 01/01/2005. merci encore de ta patience cordilament marc
Bonjour Marc
Ok je crois avoir compris l'organisation de ton classeur : il faut une couleur par cycle de 1 à 12.
Je suppose que tes cycles sont entiers ( de 1 à 12) et commencent toujours par 1. Remplace de 'For
each' jusque 'Next' par ce qu'il y a cidessous.
j-p
Couleur=array(5,7,12,3,9) ' mettre ici les couleurs voulues
cpt=1
For each feuil in Worksheets
if feuil.name<> nomOnglet then
numCycle = feuil.Range("b1").Value
numCycle = Mid(numCycle, 1 + InStr(numCycle, " "))
numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1)
feuil.Tab.ColorIndex=couleur(1)
if numCycle then cpt=cpt+1
end if
next
Bonjour,
encore moi !!! et non ça ne commence pas tjrs par 1, j'aurais du le
préciser ... désolé. Sinon l'essai semble concluant en partie: il
colorie bien 1 1er série correctement et la suivante il ne colorie que 4
onglets !!! alors que la série en B1 indique le bon n° de cycle.
Pour cette année le 1er cycle est 9 correspondant à la semaine 53 de
2004 du 27/12/2004 au 01/01/2005.
merci encore de ta patience
cordilament
marc
Ok je crois avoir compris l'organisation de ton classeur : il faut une couleur par cycle de 1 à 12. Je suppose que tes cycles sont entiers ( de 1 à 12) et commencent toujours par 1. Remplace de 'For each' jusque 'Next' par ce qu'il y a cidessous.
j-p
Couleur=array(5,7,12,3,9) ' mettre ici les couleurs voulues cpt=1 For each feuil in Worksheets if feuil.name<> nomOnglet then numCycle = feuil.Range("b1").Value numCycle = Mid(numCycle, 1 + InStr(numCycle, " ")) numCycle = 1 * Left(numCycle, InStr(numCycle, "/") - 1) feuil.Tab.ColorIndex=couleur(1) if numCycle then cpt=cpt+1
end if next
Bonjour,
encore moi !!! et non ça ne commence pas tjrs par 1, j'aurais du le préciser ... désolé. Sinon l'essai semble concluant en partie: il colorie bien 1 1er série correctement et la suivante il ne colorie que 4 onglets !!! alors que la série en B1 indique le bon n° de cycle. Pour cette année le 1er cycle est 9 correspondant à la semaine 53 de 2004 du 27/12/2004 au 01/01/2005. merci encore de ta patience cordilament marc
JpPradier
Bonjour Marc
Bon, alors j'ai rien compris à ton histoire de cycle. Est-ce que dans un cycle, les numéro sont en ordre croissant ? Si tu pouvais donner un exemple sur plusieurs series de cycle avec les couleurs attendues. Dans la dernière macro, on passe en revue les cellules B1 et à chaque fois qu'on trouve cycle 12/12, on change de couleur après.
j-p
Bonjour Marc
Bon, alors j'ai rien compris à ton histoire de cycle. Est-ce que dans un cycle, les numéro sont en
ordre croissant ?
Si tu pouvais donner un exemple sur plusieurs series de cycle avec les couleurs attendues.
Dans la dernière macro, on passe en revue les cellules B1 et à chaque fois qu'on trouve cycle 12/12,
on change de couleur après.
Bon, alors j'ai rien compris à ton histoire de cycle. Est-ce que dans un cycle, les numéro sont en ordre croissant ? Si tu pouvais donner un exemple sur plusieurs series de cycle avec les couleurs attendues. Dans la dernière macro, on passe en revue les cellules B1 et à chaque fois qu'on trouve cycle 12/12, on change de couleur après.