Access2007: 2 couleur de fond pour ETAT

Résolu
GGuyle Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   -  
GGuyle Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
je souhaiterai avoir deux couleur dans un État par exemple gris et bleu.
Mais voilà je ne veux pas avoir une ligne sur deux avec une couleur différente.
En faite je voudrai que la couleur change des que le noms client change.


6 réponses

GGuyle Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   3
 
up
0
GGuyle Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   3
 
upupup
0
blux Messages postés 27131 Date d'inscription   Statut Modérateur Dernière intervention   3 361
 
Salut,

dans la section qui t'intéresse, tu peux regarder ce qu'il est possible de faire dans l'évènement 'au formatage', afin de voir si on peut mettre du code pour changer de couleur en VBA.
0
GGuyle Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   3
 
Ha merci de ton aide.
En effet dans l'évenement (n'importe lequel) il est possible de mettre du code il suffit jus-te de choir procédure événementiel.
Mais perso je connais pas le VB. Je ne vois pas comment lui dire quand un noms de client est différent on change "Me.Détail.BackColor"
0
GGuyle Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   3
 
Voilà ce que j'ai fais pour les couleur ça marche très bien.
Dim N As Integer
Dim cpt As Integer

Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
Dim col1 As Long: col1 = RGB(190, 190, 190)
Dim col2 As Long: col2 = RGB(220, 220, 220)

' Si différent = nouvelle rupture
If Me.NIntervention <> N Then
cpt = cpt + 1
N = Me.NIntervention
End If

' En fonction du numéro de rupture
If (cpt Mod 2) = 0 Then
Me.Détail.BackColor = col1
Me.Détail.AlternateBackColor = col1
Else
Me.Détail.BackColor = col2
Me.Détail.AlternateBackColor = col2
End If

End Sub

Private Sub Report_Load()
N = 0
cpt = 0
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
GGuyle Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   3
 
Autre solution que trouver Pour éviter certain doublon:

Dim N As Integer
Dim cpt As Integer

Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
Dim col1 As Long: col1 = RGB(190, 190, 190)
Dim col2 As Long: col2 = RGB(220, 220, 220)


' Si différent = nouvelle rupture
If Me.NIntervention <> N Then
cpt = cpt + 1
N = Me.NIntervention

Me.Début.Visible = True
Me.Fin.Visible = True
Me.TpsPaC.Visible = True
Me.Transport.Visible = True
Me.Intervenant.Visible = True
Me.Noms.Visible = True
Else
Me.Début.Visible = False
Me.Fin.Visible = False
Me.TpsPaC.Visible = False
Me.Transport.Visible = False
Me.Intervenant.Visible = False
Me.Noms.Visible = False
End If




' En fonction du numéro de rupture
If (cpt Mod 2) = 0 Then
Me.Détail.BackColor = col1
Me.Détail.AlternateBackColor = col1
Else
Me.Détail.BackColor = col2
Me.Détail.AlternateBackColor = col2
End If

End Sub

Private Sub Report_Load()
N = 0
cpt = 0
End Sub
0
GGuyle Messages postés 72 Date d'inscription   Statut Membre Dernière intervention   3
 
0