Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Mise en forme conditionnel : couleur selon la donnée

1 réponse
Avatar
Thom
Bonjour,
Je me suis attelé à la lourde tâche de réaliser une gestion de planning sous
Access.
Le planning se présente sous la forme d'un formulaire en mode continue avec
les jours en colonne et les tâches par employé en ligne.

La source de données retourne un code couleur qui correspond à la tâche. Je
veux que le contrôle qui reçoit le codecouleur, prenne la couleur
correspondante.

Exemple de source de données :
RdvJour1 RdvJour2 RdvJour3 ...
Thom 16711680 32768 32768
Stef 32768 65535

Pour faire cela, j'ai écris la procédure ci dessous, mais hélas, elle ne
fonctionne : Access n'est pas assez souple pour accepter une contrôle
conditionnel avec un format non figé. Deplus, Access ne supporte pas plus de
3 conditions, alors que je peux facilement en avoir une dizaine.

Avez vous une idée pour faire fonctionner mon bout de code?

Private Sub PlanningRefresh()
Dim Ctrl As Control

For Each Ctrl In Me.Controls
If Left(Ctrl.Name, 7) = "RdvJour" Then
Ctrl.FormatConditions.Delete
Ctrl.FormatConditions.Add acFieldValue, acNotEqual, "=''"
Ctrl.FormatConditions(0).BackColor = Ctrl.Value
End If
Next

End Select

End Sub

1 réponse

Avatar
Fabien
Thom wrote:
Bonjour,
Je me suis attelé à la lourde tâche de réaliser une gestion de planning sous
Access.
Le planning se présente sous la forme d'un formulaire en mode continue avec
les jours en colonne et les tâches par employé en ligne.

La source de données retourne un code couleur qui correspond à la tâche. Je
veux que le contrôle qui reçoit le codecouleur, prenne la couleur
correspondante.

Exemple de source de données :
RdvJour1 RdvJour2 RdvJour3 ...
Thom 16711680 32768 32768
Stef 32768 65535

Pour faire cela, j'ai écris la procédure ci dessous, mais hélas, elle ne
fonctionne : Access n'est pas assez souple pour accepter une contrôle
conditionnel avec un format non figé. Deplus, Access ne supporte pas plus de
3 conditions, alors que je peux facilement en avoir une dizaine.

Avez vous une idée pour faire fonctionner mon bout de code?

Private Sub PlanningRefresh()
Dim Ctrl As Control

For Each Ctrl In Me.Controls
If Left(Ctrl.Name, 7) = "RdvJour" Then
Ctrl.FormatConditions.Delete
Ctrl.FormatConditions.Add acFieldValue, acNotEqual, "=''"
Ctrl.FormatConditions(0).BackColor = Ctrl.Value
End If
Next

End Select

End Sub




Bonjour
Quelques idées par ici
http://www.aspfr.com/codes/GESTION-PLANNING_40261.aspx
@+