OVH Cloud OVH Cloud

Format des colonnes dans un état

3 réponses
Avatar
Colette
J'essai de formater un sous état sur 2 colonnes dans l'ordre suivant: vers le
bas, ensuite vers la droite.
Cela fonctionne bien si je teste mon état seul (i.e. il n'est pas en sous
état), mais dès que je l'insère en sous-état le formatage ne se fais pas et
tout s'affiche en une seule colonne.
Je sais que cela fonctionne pour l'ordre vers la droite, ensuite vers le
bas, mais j'ai vraiment besoin de vers le bas, enduite vers la droite.
Cela est-il possible ?

Merci de votre aide.

3 réponses

Avatar
3stone
Bonjour,

"Colette"
| J'essai de formater un sous état sur 2 colonnes dans l'ordre suivant: vers le
| bas, ensuite vers la droite.
| Cela fonctionne bien si je teste mon état seul (i.e. il n'est pas en sous
| état), mais dès que je l'insère en sous-état le formatage ne se fais pas et
| tout s'affiche en une seule colonne.
| Je sais que cela fonctionne pour l'ordre vers la droite, ensuite vers le
| bas, mais j'ai vraiment besoin de vers le bas, enduite vers la droite.
| Cela est-il possible ?



Ce comportement est "normal"...

J'explique ;-)

Si tu fait d'abord à droite et puis en bas, Access place les données
les une à coté des autres selon le nombre de colonnes définies
puis passe à la ligne suivante. Et ce jusqu'à épuisement des données.

Si maintenant, tu demande vers le bas et puis à droite,
Access place les données les unes en dessous des autres...
jusqu'à épuisement des données.
Car, dans un sous-état, il n'y a pas d'en-tête et de pied de page qui
pourrait limiter le "vers le bas", contrairement a un état principal.

La solution consiste à définir l'objet "sous-état" comme non extensible!

Inconvéniant :
Si tu défini la hauteur de ton sous-état à disons 5 lignes et 3 colonnes,
tu auras un "espace" disponible de 15 données et pas une de plus!!!


Ce n'est donc pas utilisable lorsque l'on ne sait pas le nombre max
de "lignes" que le sous-état vas créer.


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
3stone
re,

"3stone"
[...]
| Inconvéniant :
| Si tu défini la hauteur de ton sous-état à disons 5 lignes et 3 colonnes,
| tu auras un "espace" disponible de 15 données et pas une de plus!!!
|
|
| Ce n'est donc pas utilisable lorsque l'on ne sait pas le nombre max
| de "lignes" que le sous-état vas créer.
|


Il existe une autre solution beaucoup plus fine...
à condition que les enregistrements contiennent un champ sur
lequel on puisse trier ! (numéro unique, date, liste de noms...)

Cela consiste à créer autant de sous-état que tu souhaite de colonnes!
La source de chaque sous-état aura un critère légèrement différent des autres.

Le principe :

Ajouter dans la source du sous-état un champ calculé qui contiendra
une numérotation continue
http://www.3stone.be/access/articles.php?lng=fr&pg9
auquel on appliquera le modulo 3 (pour 3 colonnes)

exemple:
Col1: (Nz(MaxDom("ID";"[LaTable]";"[ID] < " & [ID]))+1) Mod 3

et comme critère 1, 2 ou 0


En fait, les données sont encore toujours "en colonnes", mais on compte par 3 ;-)

Un peu plus lourd, mais à consommer sans restrictions ;-)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Colette
Merci beaucoup Pierre, je crois que je pourrai appliquer ta deuxième solution.

Colette


re,

"3stone"
[...]
| Inconvéniant :
| Si tu défini la hauteur de ton sous-état à disons 5 lignes et 3 colonnes,
| tu auras un "espace" disponible de 15 données et pas une de plus!!!
|
|
| Ce n'est donc pas utilisable lorsque l'on ne sait pas le nombre max
| de "lignes" que le sous-état vas créer.
|


Il existe une autre solution beaucoup plus fine...
à condition que les enregistrements contiennent un champ sur
lequel on puisse trier ! (numéro unique, date, liste de noms...)

Cela consiste à créer autant de sous-état que tu souhaite de colonnes!
La source de chaque sous-état aura un critère légèrement différent des autres.

Le principe :

Ajouter dans la source du sous-état un champ calculé qui contiendra
une numérotation continue
http://www.3stone.be/access/articles.php?lng=fr&pg9
auquel on appliquera le modulo 3 (pour 3 colonnes)

exemple:
Col1: (Nz(MaxDom("ID";"[LaTable]";"[ID] < " & [ID]))+1) Mod 3

et comme critère 1, 2 ou 0


En fait, les données sont encore toujours "en colonnes", mais on compte par 3 ;-)

Un peu plus lourd, mais à consommer sans restrictions ;-)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/