MACRO/EXCEL Mise en forme special

Résolu/Fermé
informatifien Messages postés 741 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 10 janvier 2016 - 15 oct. 2009 à 10:55
informatifien Messages postés 741 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 10 janvier 2016 - 16 oct. 2009 à 15:55
Bonjour,

alors nouveau problème: j'ai une macro qui inscrit tout les jours compris entre 2 dates dans des cellules adjacentes puis qui les formatent. . ..voici le code :

nbjours = retour - depose ' je compte le nbre de jours entre datedepose et dateretour

ActiveCell.Offset(0, 1) = depose ' j'inscris la valeur depose dans la colo C (5°) de la meem ligne

For x = 1 To nbjours ' j'inscris les jours les uns à la suite des autres
datesuite = CDate(Cells(a, x + 4).Value) + 1
Cells(a, x + 5).Value = datesuite
Next x

x = 5
With Range(Cells(a, x), Cells(a, nbjours + x)) ' je formate mes cellules contenant les jours
.Borders.LineStyle = xlContinuous
.Interior.ColorIndex = 15
.NumberFormat = "ddd-dd/mm/yy"
.Font.Bold = True
End With



Ce que j'aimerais c'est que les samedis et dimanche soit formatés autrement que les autres jours. . .j'ai tenté plusieur code en combinant if workday sur les conseil d'un ccm iste mais je n'arrive pas à ce que je veux je demande de l'aide . . .

S'il vous plait,Merci
A voir également:

3 réponses

informatifien Messages postés 741 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 10 janvier 2016 92
16 oct. 2009 à 11:10
Salut,

Personne ne peut m'aider??? je me suis peut etre mal exprimé . . .si c'est le cas dites le moi s'il vous plait . . . .

Merci
0
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 643
16 oct. 2009 à 15:37
Bonjour,

Voici un morceau de code qui doit résoudre le problème.

nbjours = retour - depose ' je compte le nbre de jours entre datedepose et dateretour
ActiveCell.Offset(0, 1) = depose ' j'inscris la valeur depose dans la colo C (5°) de la meem ligne
For x = 1 To nbjours ' j'inscris les jours les uns à la suite des autres
    datesuite = CDate(Cells(a, x + 4).Value) + 1
    Cells(a, x + 5).Value = datesuite
Next x
x = 5
For col = x To nbjours + x
    With Cells(a, col)
        .NumberFormat = "ddd-dd/mm/yy"
        .Borders.LineStyle = xlContinuous
        .Font.Bold = True
        If Weekday(.Value) = 1 Or Weekday(.Value) = 7 Then
            .Interior.ColorIndex = 8
        Else
            .Interior.ColorIndex = 15
        End If
    End With
Next col


Juste après le "then" se trouve la personnalisation des jours de week end dans mon exemple ils sont en bleu

Voila

A+
0
informatifien Messages postés 741 Date d'inscription lundi 18 mai 2009 Statut Membre Dernière intervention 10 janvier 2016 92
16 oct. 2009 à 15:55
YEEEES, royal ça marche au top j'aurai pas trouvé seul et c'est pas faute d'avoir testé plusieur synthase pour weekday .. .


Merci beaucoup Pilas31
0