Bonjour à tous,
Mon problème est simple : faire un Etat joli, sur Access 2002, à partir de
données croisées et non agrégées.
Soit une Base gérant les absences du personnel.
Une table PERSONNEL (CléPersonnel, NomPrénom)
Une table CALENDRIER (CléCalendrier, date)
Une table CATEGORIES ABSENCES (CléCatégorie, LibelléAbsence)
Une table ABSENCES (CléAbsence, CléPersonnel, CléCalendrier, CléCatégorie)
Cette dernière table est en relation avec les 3 premières et forme le côté
plusieurs. Dans la table ABSENCES, un même agent va avoir plusieurs
arrêts-maladie sur plusieurs jours de l'année.
Mon désir : un Etat de synthèse présentant les absences du mois, sous forme
de tableau croisé sans agrégation. En ligne, les noms des agents (Vincent,
François, Paul…) ; en colonne, les jours du mois (01, 02…) ; en donnée
croisée le libellé de l'absence (AT - accident du travail, CMO - congé
maladie ordinaire…). Genre, comme ça :
FEVRIER 2008
1er fév 2 fév 3 fév
Vincent AT AT
François CMO CMO
Paul CMO
J'arrive à un résultat approchant, en passant par une requête analyse
croisée, mais impossible ensuite de passer à un Etat. J'ai essayé d'exporter
sous Excel, mais c'est pire : les données croisées doivent être un agrégat
(compte ou somme). Et le VBA reste pour moi une langue orientale.
Je patine, merci du coup de main !
Bonjour à tous,
Mon problème est simple : faire un Etat joli, sur Access 2002, à partir de
données croisées et non agrégées.
Soit une Base gérant les absences du personnel.
Une table PERSONNEL (CléPersonnel, NomPrénom)
Une table CALENDRIER (CléCalendrier, date)
Une table CATEGORIES ABSENCES (CléCatégorie, LibelléAbsence)
Une table ABSENCES (CléAbsence, CléPersonnel, CléCalendrier, CléCatégorie)
Cette dernière table est en relation avec les 3 premières et forme le côté
plusieurs. Dans la table ABSENCES, un même agent va avoir plusieurs
arrêts-maladie sur plusieurs jours de l'année.
Mon désir : un Etat de synthèse présentant les absences du mois, sous forme
de tableau croisé sans agrégation. En ligne, les noms des agents (Vincent,
François, Paul…) ; en colonne, les jours du mois (01, 02…) ; en donnée
croisée le libellé de l'absence (AT - accident du travail, CMO - congé
maladie ordinaire…). Genre, comme ça :
FEVRIER 2008
1er fév 2 fév 3 fév
Vincent AT AT
François CMO CMO
Paul CMO
J'arrive à un résultat approchant, en passant par une requête analyse
croisée, mais impossible ensuite de passer à un Etat. J'ai essayé d'exporter
sous Excel, mais c'est pire : les données croisées doivent être un agrégat
(compte ou somme). Et le VBA reste pour moi une langue orientale.
Je patine, merci du coup de main !
Bonjour à tous,
Mon problème est simple : faire un Etat joli, sur Access 2002, à partir de
données croisées et non agrégées.
Soit une Base gérant les absences du personnel.
Une table PERSONNEL (CléPersonnel, NomPrénom)
Une table CALENDRIER (CléCalendrier, date)
Une table CATEGORIES ABSENCES (CléCatégorie, LibelléAbsence)
Une table ABSENCES (CléAbsence, CléPersonnel, CléCalendrier, CléCatégorie)
Cette dernière table est en relation avec les 3 premières et forme le côté
plusieurs. Dans la table ABSENCES, un même agent va avoir plusieurs
arrêts-maladie sur plusieurs jours de l'année.
Mon désir : un Etat de synthèse présentant les absences du mois, sous forme
de tableau croisé sans agrégation. En ligne, les noms des agents (Vincent,
François, Paul…) ; en colonne, les jours du mois (01, 02…) ; en donnée
croisée le libellé de l'absence (AT - accident du travail, CMO - congé
maladie ordinaire…). Genre, comme ça :
FEVRIER 2008
1er fév 2 fév 3 fév
Vincent AT AT
François CMO CMO
Paul CMO
J'arrive à un résultat approchant, en passant par une requête analyse
croisée, mais impossible ensuite de passer à un Etat. J'ai essayé d'exporter
sous Excel, mais c'est pire : les données croisées doivent être un agrégat
(compte ou somme). Et le VBA reste pour moi une langue orientale.
Je patine, merci du coup de main !
Bonjour,
"Kolele" (pitipasdespam)> a écrit dans le message de news:
> Bonjour à tous,
> Mon problème est simple : faire un Etat joli, sur Access 2002, à partir de
> données croisées et non agrégées.
>
> Soit une Base gérant les absences du personnel.
> Une table PERSONNEL (CléPersonnel, NomPrénom)
> Une table CALENDRIER (CléCalendrier, date)
> Une table CATEGORIES ABSENCES (CléCatégorie, LibelléAbsence)
> Une table ABSENCES (CléAbsence, CléPersonnel, CléCalendrier, CléCatégorie)
>
> Cette dernière table est en relation avec les 3 premières et forme le côté
> plusieurs. Dans la table ABSENCES, un même agent va avoir plusieurs
> arrêts-maladie sur plusieurs jours de l'année.
>
> Mon désir : un Etat de synthèse présentant les absences du mois, sous forme
> de tableau croisé sans agrégation. En ligne, les noms des agents (Vincent,
> François, Paul…) ; en colonne, les jours du mois (01, 02…) ; en donnée
> croisée le libellé de l'absence (AT - accident du travail, CMO - congé
> maladie ordinaire…). Genre, comme ça :
>
> FEVRIER 2008
> 1er fév 2 fév 3 fév
> Vincent AT AT
> François CMO CMO
> Paul CMO
>
> J'arrive à un résultat approchant, en passant par une requête analyse
> croisée, mais impossible ensuite de passer à un Etat. J'ai essayé d'exporter
> sous Excel, mais c'est pire : les données croisées doivent être un agrégat
> (compte ou somme). Et le VBA reste pour moi une langue orientale.
> Je patine, merci du coup de main !
Si tu ne fais pas apparaître le mois au niveau de tes colonnes cela devrait marcher.
....
PIVOT Right("0" & Day([DateAbs]),2) In
("01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","
27","28","29","30","31");
Et tu rends invisible à l'ouverture de ton état les numéros qui ne sont pas dans le mois.
PS:Elle te sert à quoi la table [CALENDRIER]
Bonjour,
"Kolele" <kolele@tiscali.fr.(pitipasdespam)> a écrit dans le message de news:A89F5233-6932-4D0C-9D3F-6260894E5322@microsoft.com...
> Bonjour à tous,
> Mon problème est simple : faire un Etat joli, sur Access 2002, à partir de
> données croisées et non agrégées.
>
> Soit une Base gérant les absences du personnel.
> Une table PERSONNEL (CléPersonnel, NomPrénom)
> Une table CALENDRIER (CléCalendrier, date)
> Une table CATEGORIES ABSENCES (CléCatégorie, LibelléAbsence)
> Une table ABSENCES (CléAbsence, CléPersonnel, CléCalendrier, CléCatégorie)
>
> Cette dernière table est en relation avec les 3 premières et forme le côté
> plusieurs. Dans la table ABSENCES, un même agent va avoir plusieurs
> arrêts-maladie sur plusieurs jours de l'année.
>
> Mon désir : un Etat de synthèse présentant les absences du mois, sous forme
> de tableau croisé sans agrégation. En ligne, les noms des agents (Vincent,
> François, Paul…) ; en colonne, les jours du mois (01, 02…) ; en donnée
> croisée le libellé de l'absence (AT - accident du travail, CMO - congé
> maladie ordinaire…). Genre, comme ça :
>
> FEVRIER 2008
> 1er fév 2 fév 3 fév
> Vincent AT AT
> François CMO CMO
> Paul CMO
>
> J'arrive à un résultat approchant, en passant par une requête analyse
> croisée, mais impossible ensuite de passer à un Etat. J'ai essayé d'exporter
> sous Excel, mais c'est pire : les données croisées doivent être un agrégat
> (compte ou somme). Et le VBA reste pour moi une langue orientale.
> Je patine, merci du coup de main !
Si tu ne fais pas apparaître le mois au niveau de tes colonnes cela devrait marcher.
....
PIVOT Right("0" & Day([DateAbs]),2) In
("01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","
27","28","29","30","31");
Et tu rends invisible à l'ouverture de ton état les numéros qui ne sont pas dans le mois.
PS:Elle te sert à quoi la table [CALENDRIER]
Bonjour,
"Kolele" (pitipasdespam)> a écrit dans le message de news:
> Bonjour à tous,
> Mon problème est simple : faire un Etat joli, sur Access 2002, à partir de
> données croisées et non agrégées.
>
> Soit une Base gérant les absences du personnel.
> Une table PERSONNEL (CléPersonnel, NomPrénom)
> Une table CALENDRIER (CléCalendrier, date)
> Une table CATEGORIES ABSENCES (CléCatégorie, LibelléAbsence)
> Une table ABSENCES (CléAbsence, CléPersonnel, CléCalendrier, CléCatégorie)
>
> Cette dernière table est en relation avec les 3 premières et forme le côté
> plusieurs. Dans la table ABSENCES, un même agent va avoir plusieurs
> arrêts-maladie sur plusieurs jours de l'année.
>
> Mon désir : un Etat de synthèse présentant les absences du mois, sous forme
> de tableau croisé sans agrégation. En ligne, les noms des agents (Vincent,
> François, Paul…) ; en colonne, les jours du mois (01, 02…) ; en donnée
> croisée le libellé de l'absence (AT - accident du travail, CMO - congé
> maladie ordinaire…). Genre, comme ça :
>
> FEVRIER 2008
> 1er fév 2 fév 3 fév
> Vincent AT AT
> François CMO CMO
> Paul CMO
>
> J'arrive à un résultat approchant, en passant par une requête analyse
> croisée, mais impossible ensuite de passer à un Etat. J'ai essayé d'exporter
> sous Excel, mais c'est pire : les données croisées doivent être un agrégat
> (compte ou somme). Et le VBA reste pour moi une langue orientale.
> Je patine, merci du coup de main !
Si tu ne fais pas apparaître le mois au niveau de tes colonnes cela devrait marcher.
....
PIVOT Right("0" & Day([DateAbs]),2) In
("01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","
27","28","29","30","31");
Et tu rends invisible à l'ouverture de ton état les numéros qui ne sont pas dans le mois.
PS:Elle te sert à quoi la table [CALENDRIER]
ReSalut Michel,
Merci pour la réponse que tu m'as apportée sur un autre fil. J'ai pu sortir
mon état.
En revanche, l'état est instable : si je change de mois (par un critère dans
la requête) et qu'il n'y a pas d'absence le 2 du mois (alors qu'il y en avait
dans la précédente sélectionne) -> bug : le moteur de la base de données ne
reconnaît pas "02" en tant que nom de champ.
Peut être que ta réponse ici pourrait m'aider mais je ne sais pas comment
l'utiliser : où est-ce que je mets le code que tu indiques ?
PIVOT Right("0" & Day([DateAbs]),2) In
("01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","
27","28","29","30","31");
La table CALENDRIER sert à saisir rapidement les absences au jour le jour.
L'utilisateur choisit le mois sur un formulaire (qui renvoie la date du jour
par défaut) et saisit les noms et les types d'absences dans un
sous-formulaire.
Pour dire vrai, c'est la première fois que je manipule le temps (des jours,
des dates, des heures) et je ne sais pas trop comment structurer mes données.
Si tu as des tuyaux, preneur je suis.
Bien à toi, et encore merci (un week-end entier à mouronner là-dessus)
Pierre.
"Michel__D" a écrit :Bonjour,
"Kolele" (pitipasdespam)> a écrit dans le message de news:Bonjour à tous,
Mon problème est simple : faire un Etat joli, sur Access 2002, à partir de
données croisées et non agrégées.
Soit une Base gérant les absences du personnel.
Une table PERSONNEL (CléPersonnel, NomPrénom)
Une table CALENDRIER (CléCalendrier, date)
Une table CATEGORIES ABSENCES (CléCatégorie, LibelléAbsence)
Une table ABSENCES (CléAbsence, CléPersonnel, CléCalendrier, CléCatégorie)
Cette dernière table est en relation avec les 3 premières et forme le côté
plusieurs. Dans la table ABSENCES, un même agent va avoir plusieurs
arrêts-maladie sur plusieurs jours de l'année.
Mon désir : un Etat de synthèse présentant les absences du mois, sous forme
de tableau croisé sans agrégation. En ligne, les noms des agents (Vincent,
François, Paul...) ; en colonne, les jours du mois (01, 02...) ; en donnée
croisée le libellé de l'absence (AT - accident du travail, CMO - congé
maladie ordinaire...). Genre, comme ça :
FEVRIER 2008
1er fév 2 fév 3 fév
Vincent AT AT
François CMO CMO
Paul CMO
J'arrive à un résultat approchant, en passant par une requête analyse
croisée, mais impossible ensuite de passer à un Etat. J'ai essayé d'exporter
sous Excel, mais c'est pire : les données croisées doivent être un agrégat
(compte ou somme). Et le VBA reste pour moi une langue orientale.
Je patine, merci du coup de main !
Si tu ne fais pas apparaître le mois au niveau de tes colonnes cela devrait marcher.
....
PIVOT Right("0" & Day([DateAbs]),2) In
("01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","
27","28","29","30","31");
Et tu rends invisible à l'ouverture de ton état les numéros qui ne sont pas dans le mois.
PS:Elle te sert à quoi la table [CALENDRIER]
ReSalut Michel,
Merci pour la réponse que tu m'as apportée sur un autre fil. J'ai pu sortir
mon état.
En revanche, l'état est instable : si je change de mois (par un critère dans
la requête) et qu'il n'y a pas d'absence le 2 du mois (alors qu'il y en avait
dans la précédente sélectionne) -> bug : le moteur de la base de données ne
reconnaît pas "02" en tant que nom de champ.
Peut être que ta réponse ici pourrait m'aider mais je ne sais pas comment
l'utiliser : où est-ce que je mets le code que tu indiques ?
PIVOT Right("0" & Day([DateAbs]),2) In
("01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","
27","28","29","30","31");
La table CALENDRIER sert à saisir rapidement les absences au jour le jour.
L'utilisateur choisit le mois sur un formulaire (qui renvoie la date du jour
par défaut) et saisit les noms et les types d'absences dans un
sous-formulaire.
Pour dire vrai, c'est la première fois que je manipule le temps (des jours,
des dates, des heures) et je ne sais pas trop comment structurer mes données.
Si tu as des tuyaux, preneur je suis.
Bien à toi, et encore merci (un week-end entier à mouronner là-dessus)
Pierre.
"Michel__D" a écrit :
Bonjour,
"Kolele" <kolele@tiscali.fr.(pitipasdespam)> a écrit dans le message de news:A89F5233-6932-4D0C-9D3F-6260894E5322@microsoft.com...
Bonjour à tous,
Mon problème est simple : faire un Etat joli, sur Access 2002, à partir de
données croisées et non agrégées.
Soit une Base gérant les absences du personnel.
Une table PERSONNEL (CléPersonnel, NomPrénom)
Une table CALENDRIER (CléCalendrier, date)
Une table CATEGORIES ABSENCES (CléCatégorie, LibelléAbsence)
Une table ABSENCES (CléAbsence, CléPersonnel, CléCalendrier, CléCatégorie)
Cette dernière table est en relation avec les 3 premières et forme le côté
plusieurs. Dans la table ABSENCES, un même agent va avoir plusieurs
arrêts-maladie sur plusieurs jours de l'année.
Mon désir : un Etat de synthèse présentant les absences du mois, sous forme
de tableau croisé sans agrégation. En ligne, les noms des agents (Vincent,
François, Paul...) ; en colonne, les jours du mois (01, 02...) ; en donnée
croisée le libellé de l'absence (AT - accident du travail, CMO - congé
maladie ordinaire...). Genre, comme ça :
FEVRIER 2008
1er fév 2 fév 3 fév
Vincent AT AT
François CMO CMO
Paul CMO
J'arrive à un résultat approchant, en passant par une requête analyse
croisée, mais impossible ensuite de passer à un Etat. J'ai essayé d'exporter
sous Excel, mais c'est pire : les données croisées doivent être un agrégat
(compte ou somme). Et le VBA reste pour moi une langue orientale.
Je patine, merci du coup de main !
Si tu ne fais pas apparaître le mois au niveau de tes colonnes cela devrait marcher.
....
PIVOT Right("0" & Day([DateAbs]),2) In
("01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","
27","28","29","30","31");
Et tu rends invisible à l'ouverture de ton état les numéros qui ne sont pas dans le mois.
PS:Elle te sert à quoi la table [CALENDRIER]
ReSalut Michel,
Merci pour la réponse que tu m'as apportée sur un autre fil. J'ai pu sortir
mon état.
En revanche, l'état est instable : si je change de mois (par un critère dans
la requête) et qu'il n'y a pas d'absence le 2 du mois (alors qu'il y en avait
dans la précédente sélectionne) -> bug : le moteur de la base de données ne
reconnaît pas "02" en tant que nom de champ.
Peut être que ta réponse ici pourrait m'aider mais je ne sais pas comment
l'utiliser : où est-ce que je mets le code que tu indiques ?
PIVOT Right("0" & Day([DateAbs]),2) In
("01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","
27","28","29","30","31");
La table CALENDRIER sert à saisir rapidement les absences au jour le jour.
L'utilisateur choisit le mois sur un formulaire (qui renvoie la date du jour
par défaut) et saisit les noms et les types d'absences dans un
sous-formulaire.
Pour dire vrai, c'est la première fois que je manipule le temps (des jours,
des dates, des heures) et je ne sais pas trop comment structurer mes données.
Si tu as des tuyaux, preneur je suis.
Bien à toi, et encore merci (un week-end entier à mouronner là-dessus)
Pierre.
"Michel__D" a écrit :Bonjour,
"Kolele" (pitipasdespam)> a écrit dans le message de news:Bonjour à tous,
Mon problème est simple : faire un Etat joli, sur Access 2002, à partir de
données croisées et non agrégées.
Soit une Base gérant les absences du personnel.
Une table PERSONNEL (CléPersonnel, NomPrénom)
Une table CALENDRIER (CléCalendrier, date)
Une table CATEGORIES ABSENCES (CléCatégorie, LibelléAbsence)
Une table ABSENCES (CléAbsence, CléPersonnel, CléCalendrier, CléCatégorie)
Cette dernière table est en relation avec les 3 premières et forme le côté
plusieurs. Dans la table ABSENCES, un même agent va avoir plusieurs
arrêts-maladie sur plusieurs jours de l'année.
Mon désir : un Etat de synthèse présentant les absences du mois, sous forme
de tableau croisé sans agrégation. En ligne, les noms des agents (Vincent,
François, Paul...) ; en colonne, les jours du mois (01, 02...) ; en donnée
croisée le libellé de l'absence (AT - accident du travail, CMO - congé
maladie ordinaire...). Genre, comme ça :
FEVRIER 2008
1er fév 2 fév 3 fév
Vincent AT AT
François CMO CMO
Paul CMO
J'arrive à un résultat approchant, en passant par une requête analyse
croisée, mais impossible ensuite de passer à un Etat. J'ai essayé d'exporter
sous Excel, mais c'est pire : les données croisées doivent être un agrégat
(compte ou somme). Et le VBA reste pour moi une langue orientale.
Je patine, merci du coup de main !
Si tu ne fais pas apparaître le mois au niveau de tes colonnes cela devrait marcher.
....
PIVOT Right("0" & Day([DateAbs]),2) In
("01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","
27","28","29","30","31");
Et tu rends invisible à l'ouverture de ton état les numéros qui ne sont pas dans le mois.
PS:Elle te sert à quoi la table [CALENDRIER]