OVH Cloud OVH Cloud

probleme avec des string

9 réponses
Avatar
Cedric
Bonjour,
je place des info d'un recordset dans une chaine que j'affiche. J'aimerais
savoir si il est possible d'avoir le meme espace anetre chaque element .Je
m'explique : les etoiles representent des espaces. nom1***Prenom1 et en
dessous nom2**Prenom2 il y a moins d'espace parce que le nom est plus long
j'aimerais que le prenom s'affiche toujours au meme endroit peut importe la
longeur du nom afin d'avoir une liste d'element plus lisible. En espérant
m'etre explique correctement. Merci d'avance.

9 réponses

Avatar
Gafish
Bonjour,

Tu affiches ton string dans quel but ? Et tu l'affiches comment ? Par msgbox
?
Est-ce qu'il ne serait pas plus simple dans ton cas de l'afficher par un
form, avec une zone pour le nom, une zone pour le prénom ainsi ta liste sera
forcément alignée. Non ?

Arnaud

"Cedric" a écrit dans le message news:
42145098$0$17417$
Bonjour,
je place des info d'un recordset dans une chaine que j'affiche. J'aimerais
savoir si il est possible d'avoir le meme espace anetre chaque element .Je
m'explique : les etoiles representent des espaces. nom1***Prenom1 et en
dessous nom2**Prenom2 il y a moins d'espace parce que le nom est plus long
j'aimerais que le prenom s'affiche toujours au meme endroit peut importe
la

longeur du nom afin d'avoir une liste d'element plus lisible. En espérant
m'etre explique correctement. Merci d'avance.




Avatar
Cedric
Ben en fait c'est dans une listBox et comme c'est des commandes et qu'il y
en a bcp ce le plus simple en fait je me demandais surtout si on pouvait
afficherdu texte en comptant le nombre de caractere avant donc en fait dire
: placer le texte a 40 caracteres du debut et pas à la suite. En esperant ne
pas avoir ete flou dans mes explications :D
"Gafish" a écrit dans le message de
news:ua%
Bonjour,

Tu affiches ton string dans quel but ? Et tu l'affiches comment ? Par
msgbox

?
Est-ce qu'il ne serait pas plus simple dans ton cas de l'afficher par un
form, avec une zone pour le nom, une zone pour le prénom ainsi ta liste
sera

forcément alignée. Non ?

Arnaud

"Cedric" a écrit dans le message news:
42145098$0$17417$
Bonjour,
je place des info d'un recordset dans une chaine que j'affiche.
J'aimerais


savoir si il est possible d'avoir le meme espace anetre chaque element
.Je


m'explique : les etoiles representent des espaces. nom1***Prenom1 et
en


dessous nom2**Prenom2 il y a moins d'espace parce que le nom est plus
long


j'aimerais que le prenom s'affiche toujours au meme endroit peut importe
la

longeur du nom afin d'avoir une liste d'element plus lisible. En
espérant


m'etre explique correctement. Merci d'avance.








Avatar
Gafish
Et pourquoi tu ne ferais pas deux colonnes dans ta listBox ? Ce serait plus
simple.
Si malgré tout tu veux remplir ton string, mettons jusqu'au 40eme caractère,
tu peux faire quelque chose du genre (on appelera ici ton string MaChaine) :

Do While Len(MaChaine) < 40
MaChaine = MaChaine & " "
Loop

Arnaud

"Cedric" a écrit dans le message news:
42145ca4$0$17410$
Ben en fait c'est dans une listBox et comme c'est des commandes et qu'il
y

en a bcp ce le plus simple en fait je me demandais surtout si on pouvait
afficherdu texte en comptant le nombre de caractere avant donc en fait
dire

: placer le texte a 40 caracteres du debut et pas à la suite. En esperant
ne

pas avoir ete flou dans mes explications :D
"Gafish" a écrit dans le message de
news:ua%
Bonjour,

Tu affiches ton string dans quel but ? Et tu l'affiches comment ? Par
msgbox

?
Est-ce qu'il ne serait pas plus simple dans ton cas de l'afficher par un
form, avec une zone pour le nom, une zone pour le prénom ainsi ta liste
sera

forcément alignée. Non ?

Arnaud

"Cedric" a écrit dans le message news:
42145098$0$17417$
Bonjour,
je place des info d'un recordset dans une chaine que j'affiche.
J'aimerais


savoir si il est possible d'avoir le meme espace anetre chaque element
.Je


m'explique : les etoiles representent des espaces. nom1***Prenom1 et
en


dessous nom2**Prenom2 il y a moins d'espace parce que le nom est plus
long


j'aimerais que le prenom s'affiche toujours au meme endroit peut
importe



la
longeur du nom afin d'avoir une liste d'element plus lisible. En
espérant


m'etre explique correctement. Merci d'avance.












Avatar
Jessy Sempere [MVP]
Bonjour

J'ai un peu plus simple :
En vba ou sql :
[ChampNom] & String(40-Len([ChampNom]),' ') & [ChampPrenom]

Dans une requête :

[ChampNom] & Chaîne(40-NbCar([ChampNom]);" ") & [ChampPrenom]

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Gafish" a écrit dans le message news:
OVs2n$
Et pourquoi tu ne ferais pas deux colonnes dans ta listBox ? Ce serait
plus

simple.
Si malgré tout tu veux remplir ton string, mettons jusqu'au 40eme
caractère,

tu peux faire quelque chose du genre (on appelera ici ton string MaChaine)
:


Do While Len(MaChaine) < 40
MaChaine = MaChaine & " "
Loop

Arnaud

"Cedric" a écrit dans le message news:
42145ca4$0$17410$
Ben en fait c'est dans une listBox et comme c'est des commandes et
qu'il


y
en a bcp ce le plus simple en fait je me demandais surtout si on pouvait
afficherdu texte en comptant le nombre de caractere avant donc en fait
dire

: placer le texte a 40 caracteres du debut et pas à la suite. En
esperant


ne
pas avoir ete flou dans mes explications :D
"Gafish" a écrit dans le message de
news:ua%
Bonjour,

Tu affiches ton string dans quel but ? Et tu l'affiches comment ? Par
msgbox

?
Est-ce qu'il ne serait pas plus simple dans ton cas de l'afficher par
un



form, avec une zone pour le nom, une zone pour le prénom ainsi ta
liste



sera
forcément alignée. Non ?

Arnaud

"Cedric" a écrit dans le message news:
42145098$0$17417$
Bonjour,
je place des info d'un recordset dans une chaine que j'affiche.
J'aimerais


savoir si il est possible d'avoir le meme espace anetre chaque
element




.Je
m'explique : les etoiles representent des espaces. nom1***Prenom1
et




en
dessous nom2**Prenom2 il y a moins d'espace parce que le nom est
plus




long
j'aimerais que le prenom s'affiche toujours au meme endroit peut
importe



la
longeur du nom afin d'avoir une liste d'element plus lisible. En
espérant


m'etre explique correctement. Merci d'avance.
















Avatar
Cedric
ok je vais essayer merci pour vos reponses
"Jessy Sempere [MVP]" a écrit dans le message de
news:42146153$
Bonjour

J'ai un peu plus simple :
En vba ou sql :
[ChampNom] & String(40-Len([ChampNom]),' ') & [ChampPrenom]

Dans une requête :

[ChampNom] & Chaîne(40-NbCar([ChampNom]);" ") & [ChampPrenom]

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Gafish" a écrit dans le message news:
OVs2n$
Et pourquoi tu ne ferais pas deux colonnes dans ta listBox ? Ce serait
plus

simple.
Si malgré tout tu veux remplir ton string, mettons jusqu'au 40eme
caractère,

tu peux faire quelque chose du genre (on appelera ici ton string
MaChaine)


:

Do While Len(MaChaine) < 40
MaChaine = MaChaine & " "
Loop

Arnaud

"Cedric" a écrit dans le message news:
42145ca4$0$17410$
Ben en fait c'est dans une listBox et comme c'est des commandes et
qu'il


y
en a bcp ce le plus simple en fait je me demandais surtout si on
pouvait



afficherdu texte en comptant le nombre de caractere avant donc en fait
dire

: placer le texte a 40 caracteres du debut et pas à la suite. En
esperant


ne
pas avoir ete flou dans mes explications :D
"Gafish" a écrit dans le message de
news:ua%
Bonjour,

Tu affiches ton string dans quel but ? Et tu l'affiches comment ?
Par




msgbox
?
Est-ce qu'il ne serait pas plus simple dans ton cas de l'afficher
par




un
form, avec une zone pour le nom, une zone pour le prénom ainsi ta
liste



sera
forcément alignée. Non ?

Arnaud

"Cedric" a écrit dans le message news:
42145098$0$17417$
Bonjour,
je place des info d'un recordset dans une chaine que j'affiche.
J'aimerais


savoir si il est possible d'avoir le meme espace anetre chaque
element




.Je
m'explique : les etoiles representent des espaces.
nom1***Prenom1





et
en
dessous nom2**Prenom2 il y a moins d'espace parce que le nom est
plus




long
j'aimerais que le prenom s'affiche toujours au meme endroit peut
importe



la
longeur du nom afin d'avoir une liste d'element plus lisible. En
espérant


m'etre explique correctement. Merci d'avance.




















Avatar
Cedric
Je me demandais comment on fesait pour faire des colonnes dans une liste
parce que moi si je me fais y ne fait plus de scroll vertical et si
j'utilise une microsoft active etc y me dit qu'il est impossible de definir
la propriete list si qqn pouvait me donner le mode d'emploi :)
"Cedric" a écrit dans le message de
news:421464c3$0$17407$
ok je vais essayer merci pour vos reponses
"Jessy Sempere [MVP]" a écrit dans le message
de

news:42146153$
Bonjour

J'ai un peu plus simple :
En vba ou sql :
[ChampNom] & String(40-Len([ChampNom]),' ') & [ChampPrenom]

Dans une requête :

[ChampNom] & Chaîne(40-NbCar([ChampNom]);" ") & [ChampPrenom]

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Gafish" a écrit dans le message news:
OVs2n$
Et pourquoi tu ne ferais pas deux colonnes dans ta listBox ? Ce serait
plus

simple.
Si malgré tout tu veux remplir ton string, mettons jusqu'au 40eme
caractère,

tu peux faire quelque chose du genre (on appelera ici ton string
MaChaine)


:

Do While Len(MaChaine) < 40
MaChaine = MaChaine & " "
Loop

Arnaud

"Cedric" a écrit dans le message news:
42145ca4$0$17410$
Ben en fait c'est dans une listBox et comme c'est des commandes et
qu'il


y
en a bcp ce le plus simple en fait je me demandais surtout si on
pouvait



afficherdu texte en comptant le nombre de caractere avant donc en
fait




dire
: placer le texte a 40 caracteres du debut et pas à la suite. En
esperant


ne
pas avoir ete flou dans mes explications :D
"Gafish" a écrit dans le message de
news:ua%
Bonjour,

Tu affiches ton string dans quel but ? Et tu l'affiches comment ?
Par




msgbox
?
Est-ce qu'il ne serait pas plus simple dans ton cas de l'afficher
par




un
form, avec une zone pour le nom, une zone pour le prénom ainsi ta
liste



sera
forcément alignée. Non ?

Arnaud

"Cedric" a écrit dans le message news:
42145098$0$17417$
Bonjour,
je place des info d'un recordset dans une chaine que j'affiche.
J'aimerais


savoir si il est possible d'avoir le meme espace anetre chaque
element




.Je
m'explique : les etoiles representent des espaces.
nom1***Prenom1





et
en
dessous nom2**Prenom2 il y a moins d'espace parce que le nom est
plus




long
j'aimerais que le prenom s'affiche toujours au meme endroit peut
importe



la
longeur du nom afin d'avoir une liste d'element plus lisible. En
espérant


m'etre explique correctement. Merci d'avance.
























Avatar
Codial
Bonjour,
De plus il me semble qu'avec la police Courier New toutes les lettres et
chiffres ont la même largeur, ce qui permet d'aligner des données aus mêmes
endroit dans une liste. A vérifier quand même!

Codial


"Cedric" a écrit dans le message de news:
421464c3$0$17407$
ok je vais essayer merci pour vos reponses
"Jessy Sempere [MVP]" a écrit dans le message
de
news:42146153$
Bonjour

J'ai un peu plus simple :
En vba ou sql :
[ChampNom] & String(40-Len([ChampNom]),' ') & [ChampPrenom]

Dans une requête :

[ChampNom] & Chaîne(40-NbCar([ChampNom]);" ") & [ChampPrenom]

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Gafish" a écrit dans le message news:
OVs2n$
Et pourquoi tu ne ferais pas deux colonnes dans ta listBox ? Ce serait
plus

simple.
Si malgré tout tu veux remplir ton string, mettons jusqu'au 40eme
caractère,

tu peux faire quelque chose du genre (on appelera ici ton string
MaChaine)


:

Do While Len(MaChaine) < 40
MaChaine = MaChaine & " "
Loop

Arnaud

"Cedric" a écrit dans le message news:
42145ca4$0$17410$
Ben en fait c'est dans une listBox et comme c'est des commandes et
qu'il


y
en a bcp ce le plus simple en fait je me demandais surtout si on
pouvait



afficherdu texte en comptant le nombre de caractere avant donc en
fait
dire

: placer le texte a 40 caracteres du debut et pas à la suite. En
esperant


ne
pas avoir ete flou dans mes explications :D
"Gafish" a écrit dans le message de
news:ua%
Bonjour,

Tu affiches ton string dans quel but ? Et tu l'affiches comment ?
Par




msgbox
?
Est-ce qu'il ne serait pas plus simple dans ton cas de l'afficher
par




un
form, avec une zone pour le nom, une zone pour le prénom ainsi ta
liste



sera
forcément alignée. Non ?

Arnaud

"Cedric" a écrit dans le message news:
42145098$0$17417$
Bonjour,
je place des info d'un recordset dans une chaine que j'affiche.
J'aimerais


savoir si il est possible d'avoir le meme espace anetre chaque
element




.Je
m'explique : les etoiles representent des espaces.
nom1***Prenom1





et
en
dessous nom2**Prenom2 il y a moins d'espace parce que le nom est
plus




long
j'aimerais que le prenom s'affiche toujours au meme endroit peut
importe



la
longeur du nom afin d'avoir une liste d'element plus lisible. En
espérant


m'etre explique correctement. Merci d'avance.
























Avatar
Gafish
Effectivement, c'est quand même plus propre qu'avec une boucle ! :)

"Jessy Sempere [MVP]" a écrit dans le message
news: 42146153$
Bonjour

J'ai un peu plus simple :
En vba ou sql :
[ChampNom] & String(40-Len([ChampNom]),' ') & [ChampPrenom]

Dans une requête :

[ChampNom] & Chaîne(40-NbCar([ChampNom]);" ") & [ChampPrenom]

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Gafish" a écrit dans le message news:
OVs2n$
Et pourquoi tu ne ferais pas deux colonnes dans ta listBox ? Ce serait
plus

simple.
Si malgré tout tu veux remplir ton string, mettons jusqu'au 40eme
caractère,

tu peux faire quelque chose du genre (on appelera ici ton string
MaChaine)


:

Do While Len(MaChaine) < 40
MaChaine = MaChaine & " "
Loop

Arnaud

"Cedric" a écrit dans le message news:
42145ca4$0$17410$
Ben en fait c'est dans une listBox et comme c'est des commandes et
qu'il


y
en a bcp ce le plus simple en fait je me demandais surtout si on
pouvait



afficherdu texte en comptant le nombre de caractere avant donc en fait
dire

: placer le texte a 40 caracteres du debut et pas à la suite. En
esperant


ne
pas avoir ete flou dans mes explications :D
"Gafish" a écrit dans le message de
news:ua%
Bonjour,

Tu affiches ton string dans quel but ? Et tu l'affiches comment ?
Par




msgbox
?
Est-ce qu'il ne serait pas plus simple dans ton cas de l'afficher
par




un
form, avec une zone pour le nom, une zone pour le prénom ainsi ta
liste



sera
forcément alignée. Non ?

Arnaud

"Cedric" a écrit dans le message news:
42145098$0$17417$
Bonjour,
je place des info d'un recordset dans une chaine que j'affiche.
J'aimerais


savoir si il est possible d'avoir le meme espace anetre chaque
element




.Je
m'explique : les etoiles representent des espaces.
nom1***Prenom1





et
en
dessous nom2**Prenom2 il y a moins d'espace parce que le nom est
plus




long
j'aimerais que le prenom s'affiche toujours au meme endroit peut
importe



la
longeur du nom afin d'avoir une liste d'element plus lisible. En
espérant


m'etre explique correctement. Merci d'avance.




















Avatar
Gafish
Tu as dans les propriétés de ta liste, une propriété "nombre de colonne"

"Cedric" a écrit dans le message news:
421468e9$0$17407$
Je me demandais comment on fesait pour faire des colonnes dans une liste
parce que moi si je me fais y ne fait plus de scroll vertical et si
j'utilise une microsoft active etc y me dit qu'il est impossible de
definir

la propriete list si qqn pouvait me donner le mode d'emploi :)
"Cedric" a écrit dans le message de
news:421464c3$0$17407$
ok je vais essayer merci pour vos reponses
"Jessy Sempere [MVP]" a écrit dans le
message


de
news:42146153$
Bonjour

J'ai un peu plus simple :
En vba ou sql :
[ChampNom] & String(40-Len([ChampNom]),' ') & [ChampPrenom]

Dans une requête :

[ChampNom] & Chaîne(40-NbCar([ChampNom]);" ") & [ChampPrenom]

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Gafish" a écrit dans le message news:
OVs2n$
Et pourquoi tu ne ferais pas deux colonnes dans ta listBox ? Ce
serait




plus
simple.
Si malgré tout tu veux remplir ton string, mettons jusqu'au 40eme
caractère,

tu peux faire quelque chose du genre (on appelera ici ton string
MaChaine)


:

Do While Len(MaChaine) < 40
MaChaine = MaChaine & " "
Loop

Arnaud

"Cedric" a écrit dans le message news:
42145ca4$0$17410$
Ben en fait c'est dans une listBox et comme c'est des commandes
et





qu'il
y
en a bcp ce le plus simple en fait je me demandais surtout si on
pouvait



afficherdu texte en comptant le nombre de caractere avant donc en
fait




dire
: placer le texte a 40 caracteres du debut et pas à la suite. En
esperant


ne
pas avoir ete flou dans mes explications :D
"Gafish" a écrit dans le message de
news:ua%
Bonjour,

Tu affiches ton string dans quel but ? Et tu l'affiches comment
?






Par
msgbox
?
Est-ce qu'il ne serait pas plus simple dans ton cas de
l'afficher






par
un
form, avec une zone pour le nom, une zone pour le prénom ainsi
ta






liste
sera
forcément alignée. Non ?

Arnaud

"Cedric" a écrit dans le message news:
42145098$0$17417$
Bonjour,
je place des info d'un recordset dans une chaine que
j'affiche.







J'aimerais
savoir si il est possible d'avoir le meme espace anetre chaque
element




.Je
m'explique : les etoiles representent des espaces.
nom1***Prenom1





et
en
dessous nom2**Prenom2 il y a moins d'espace parce que le nom
est







plus
long
j'aimerais que le prenom s'affiche toujours au meme endroit
peut







importe
la
longeur du nom afin d'avoir une liste d'element plus lisible.
En







espérant
m'etre explique correctement. Merci d'avance.