Mise en forme conditionnel : couleur selon la donnée
1 réponse
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
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
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
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
@+
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