OVH Cloud OVH Cloud

Plusieurs colonnes dans un formulaire continue

6 réponses
Avatar
Guillaume
Bonjour,

Je crains que ce que je demande est impossible, mais je=20
le demande quand m=EAme au cas o=F9 je me trompe, car il=20
faudrait vraiment que ce soit possible.

J'ai un formulaire pour faire un bon d'exp=E9dition, il =E0=20
l'apparence exacte du bon d'exp=E9dition. en fait c'est lui=20
que j'imprime.=20

Dans de formulaire, il y a, entre autre, un sous-
formulaire dans lequel on inscrit des num=E9ro de lot et la=20
quantit=E9 de produit proveneant de ce lot. Il peut en=20
avoir entre 5-6 comme il peut en avoir 40. Voici =E0 quoi=20
le sous-formulaire resemble
B123 5
B214 12
B654 32
C567 35 etc...

Le probl=E8me c'est quand il y en a beaucoup =E7a devient=20
tr=E8s laid. Je voudrais donc s=E9parer ces donn=E9es en 2 ou 3=20
colonnes pour que =E7a est l'air de ceci
B123 5 B214 12
B654 32 C567 35 etc...

Est-ce que quelqu'un sait comment faire =E7a?? Ou a un truc=20
pour faire quelque chose de ce genre.

Merci de m'aider
Guillaume

6 réponses

Avatar
Raymond [mvp]
Bonjour.

Pourquoi ne pas imprimer un état qui aurait la même "tête" que ton
formulaire ? ce qui aurait l'avantage d'imprimer un sous-état ( avec les
données du sous-formulaire) qui lui serait variable dans sa hauteur et ne
te poserait pas de problème à ce niveau .

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Guillaume" a écrit dans le message de
news:e0a201c3f012$b04ade40$
Bonjour,

Je crains que ce que je demande est impossible, mais je
le demande quand même au cas où je me trompe, car il
faudrait vraiment que ce soit possible.

J'ai un formulaire pour faire un bon d'expédition, il à
l'apparence exacte du bon d'expédition. en fait c'est lui
que j'imprime.

Dans de formulaire, il y a, entre autre, un sous-
formulaire dans lequel on inscrit des numéro de lot et la
quantité de produit proveneant de ce lot. Il peut en
avoir entre 5-6 comme il peut en avoir 40. Voici à quoi
le sous-formulaire resemble
B123 5
B214 12
B654 32
C567 35 etc...

Le problème c'est quand il y en a beaucoup ça devient
très laid. Je voudrais donc séparer ces données en 2 ou 3
colonnes pour que ça est l'air de ceci
B123 5 B214 12
B654 32 C567 35 etc...

Est-ce que quelqu'un sait comment faire ça?? Ou a un truc
pour faire quelque chose de ce genre.

Merci de m'aider
Guillaume
Avatar
Guillaume
Bonjour,

Le problème est justement la hauteur. Celle de mon sous-
formulaire est variable et c'est justement ça le
problème.
Je ne veux pas que cette partie du bon d'expédition
prenne beaucoup de place. Si j'en est plusieurs, il
s'agrandis et comme il ne prend que la moitié de la
largueur du formaulaire à côté d'autre chose, s'il
grandis un peu c'est pas grave, mais dans certains cas ça
devient trop long et affreux. Donc je veux contrer
l'agrandisement trop rapide en le mettant sur plusieurs
colonnes (ou autres solutions).

Guillaume

-----Message d'origine-----
Bonjour.

Pourquoi ne pas imprimer un état qui aurait la
même "tête" que ton

formulaire ? ce qui aurait l'avantage d'imprimer un sous-
état ( avec les

données du sous-formulaire) qui lui serait variable
dans sa hauteur et ne

te poserait pas de problème à ce niveau .

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Guillaume" a
écrit dans le message de

news:e0a201c3f012$b04ade40$
Bonjour,

Je crains que ce que je demande est impossible, mais je
le demande quand même au cas où je me trompe, car il
faudrait vraiment que ce soit possible.

J'ai un formulaire pour faire un bon d'expédition, il à
l'apparence exacte du bon d'expédition. en fait c'est lui
que j'imprime.

Dans de formulaire, il y a, entre autre, un sous-
formulaire dans lequel on inscrit des numéro de lot et la
quantité de produit proveneant de ce lot. Il peut en
avoir entre 5-6 comme il peut en avoir 40. Voici à quoi
le sous-formulaire resemble
B123 5
B214 12
B654 32
C567 35 etc...

Le problème c'est quand il y en a beaucoup ça devient
très laid. Je voudrais donc séparer ces données en 2 ou 3
colonnes pour que ça est l'air de ceci
B123 5 B214 12
B654 32 C567 35 etc...

Est-ce que quelqu'un sait comment faire ça?? Ou a un truc
pour faire quelque chose de ce genre.

Merci de m'aider
Guillaume


.



Avatar
Raymond [mvp]
je ne vois pas bien le multi-colonnage dans ton sous-formulaire.
en cas de lignes nombreuses, si tu baisses la fontsize de ton
sous-formulaire et que tu ajustes les hauteurs de champs, ça donne quoi ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Guillaume" a écrit dans le message de
news:d9f801c3f016$8d0dbb60$
Bonjour,

Le problème est justement la hauteur. Celle de mon sous-
formulaire est variable et c'est justement ça le
problème.
Je ne veux pas que cette partie du bon d'expédition
prenne beaucoup de place. Si j'en est plusieurs, il
s'agrandis et comme il ne prend que la moitié de la
largueur du formaulaire à côté d'autre chose, s'il
grandis un peu c'est pas grave, mais dans certains cas ça
devient trop long et affreux. Donc je veux contrer
l'agrandisement trop rapide en le mettant sur plusieurs
colonnes (ou autres solutions).

Guillaume
Avatar
Guillaume
C'est que le bon d'expédition est beau lorsque dans ce
sous-formaulaire il n'y a que 5-6 enregistrement,
rapettiser l'écriture va permettre d'en mettre peut-être
9 mais jamais 40. Voici un appercu de quoi à l'air le bon
d'expédition, j'espère que tu vas voir le problème si le
sous-formulaire donc je te parle devient très grand 40
ligne par rapport au 5-6 possibles.

_________________ __________________
| | | |
| | | info transport |
| | | |
| adresse | ------------------
| du client | ------------------
| | | le sous |
| | | formulaire |
----------------- | en question |
| numlot qte |
------------------
-------------------------------------
| information expédié |
| |
| |
-------------------------------------

Donc je veux essayer d'utiliser le même espace mais pour
mettre plus d'information sans que cette section
deviennet trop grande. J'aivais penser à mettre ça sur
plusieurs colonne (comme il le fessait à la main avant).

J'espère que tu comprends mieux le problème.

Guillaume

-----Message d'origine-----
je ne vois pas bien le multi-colonnage dans ton sous-
formulaire.

en cas de lignes nombreuses, si tu baisses la fontsize
de ton

sous-formulaire et que tu ajustes les hauteurs de
champs, ça donne quoi ?


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Guillaume" a
écrit dans le message de

news:d9f801c3f016$8d0dbb60$
Bonjour,

Le problème est justement la hauteur. Celle de mon sous-
formulaire est variable et c'est justement ça le
problème.
Je ne veux pas que cette partie du bon d'expédition
prenne beaucoup de place. Si j'en est plusieurs, il
s'agrandis et comme il ne prend que la moitié de la
largueur du formaulaire à côté d'autre chose, s'il
grandis un peu c'est pas grave, mais dans certains cas ça
devient trop long et affreux. Donc je veux contrer
l'agrandisement trop rapide en le mettant sur plusieurs
colonnes (ou autres solutions).

Guillaume


.



Avatar
gazelle
Bonsoir Guillaume,
Si tu te débrouille en VBA, au lieu d'imprimer un sous-formulaire, tu
imprime un champ calculé basé sur une fonction du genre : =GetLots(NumBon)
avec une fonction Getlots qui balaye un recordset "Select * from Lots Where
NumBon = " & ParamNumBon
et place les numéros de lots et les quantité dans un string avec un retour
chariot tout les 3 ou 4 lots selon largeur voulue.
Pour obtenir l'alignement des colonnes, il faut formater les numéros de lots
et les quantité avec un nombre de caracteres prédéfinin en ajoutant des
espaces s'il le faut avant de concatener le numéro de lot suivant
Pour continuer à imprimer le formulaire que tu utilise pour la saisie, tu
indique la propriété : Afficher = A l'écran pour ton sous-formulaire.
Il faut etre un peu experimenté en VBA pour cela, mais sinon je ne voit pas
d'autre solution
Si, y a une autre solution, mais alors completement débile : créer autant de
sous-etats que de colonnes et dans les evenement Formatage effectuer un
Cancel en ne laissant s'afficher que les lignes multiples de NbColonnes
pour la premiere colonne (ex: 1,4,7...), multiples de NbColonnes+1 pour la
deuxieme colonne (2,5,8...) et multiples de NbColonnes+2 pour la deuxieme
colonne (3,6,9...). Pour savoir quelle ligne est en train de s'imprimer
placer un champ NumLigne, propriété ControleSource :"=1" et propriété Cumul
:"en continu"
C'est dur la vie....

"Guillaume" a écrit dans le message de
news:e0a201c3f012$b04ade40$
Bonjour,

Je crains que ce que je demande est impossible, mais je
le demande quand même au cas où je me trompe, car il
faudrait vraiment que ce soit possible.

J'ai un formulaire pour faire un bon d'expédition, il à
l'apparence exacte du bon d'expédition. en fait c'est lui
que j'imprime.

Dans de formulaire, il y a, entre autre, un sous-
formulaire dans lequel on inscrit des numéro de lot et la
quantité de produit proveneant de ce lot. Il peut en
avoir entre 5-6 comme il peut en avoir 40. Voici à quoi
le sous-formulaire resemble
B123 5
B214 12
B654 32
C567 35 etc...

Le problème c'est quand il y en a beaucoup ça devient
très laid. Je voudrais donc séparer ces données en 2 ou 3
colonnes pour que ça est l'air de ceci
B123 5 B214 12
B654 32 C567 35 etc...

Est-ce que quelqu'un sait comment faire ça?? Ou a un truc
pour faire quelque chose de ce genre.

Merci de m'aider
Guillaume
Avatar
Guillaume
Salut,

Je vais regarder cette possibilité de créer un string.

Merci
Guillaume

-----Message d'origine-----
Bonsoir Guillaume,
Si tu te débrouille en VBA, au lieu d'imprimer un sous-
formulaire, tu

imprime un champ calculé basé sur une fonction du
genre : =GetLots(NumBon)

avec une fonction Getlots qui balaye un
recordset "Select * from Lots Where

NumBon = " & ParamNumBon
et place les numéros de lots et les quantité dans un
string avec un retour

chariot tout les 3 ou 4 lots selon largeur voulue.
Pour obtenir l'alignement des colonnes, il faut formater
les numéros de lots

et les quantité avec un nombre de caracteres prédéfinin
en ajoutant des

espaces s'il le faut avant de concatener le numéro de
lot suivant

Pour continuer à imprimer le formulaire que tu utilise
pour la saisie, tu

indique la propriété : Afficher = A l'écran pour ton
sous-formulaire.

Il faut etre un peu experimenté en VBA pour cela, mais
sinon je ne voit pas

d'autre solution
Si, y a une autre solution, mais alors completement
débile : créer autant de

sous-etats que de colonnes et dans les evenement
Formatage effectuer un

Cancel en ne laissant s'afficher que les lignes
multiples de NbColonnes

pour la premiere colonne (ex: 1,4,7...), multiples de
NbColonnes+1 pour la

deuxieme colonne (2,5,8...) et multiples de
NbColonnes+2 pour la deuxieme

colonne (3,6,9...). Pour savoir quelle ligne est en
train de s'imprimer

placer un champ NumLigne, propriété ControleSource :"=1"
et propriété Cumul

:"en continu"
C'est dur la vie....

"Guillaume" a
écrit dans le message de

news:e0a201c3f012$b04ade40$
Bonjour,

Je crains que ce que je demande est impossible, mais je
le demande quand même au cas où je me trompe, car il
faudrait vraiment que ce soit possible.

J'ai un formulaire pour faire un bon d'expédition, il à
l'apparence exacte du bon d'expédition. en fait c'est lui
que j'imprime.

Dans de formulaire, il y a, entre autre, un sous-
formulaire dans lequel on inscrit des numéro de lot et la
quantité de produit proveneant de ce lot. Il peut en
avoir entre 5-6 comme il peut en avoir 40. Voici à quoi
le sous-formulaire resemble
B123 5
B214 12
B654 32
C567 35 etc...

Le problème c'est quand il y en a beaucoup ça devient
très laid. Je voudrais donc séparer ces données en 2 ou 3
colonnes pour que ça est l'air de ceci
B123 5 B214 12
B654 32 C567 35 etc...

Est-ce que quelqu'un sait comment faire ça?? Ou a un truc
pour faire quelque chose de ce genre.

Merci de m'aider
Guillaume


.