OVH Cloud OVH Cloud

problème concatener en EXCELL

16 réponses
Avatar
Digero
Bonjour,

j'ai un petit problème lorsque je concatène 3 colonnes en EXCELL les
chiffres de la 3è colonne sont configurés en 5 chiffres avec affichage d'un
ou deux zéros devant les valeurs inférieures à 10000.

357 4000 00282 +++357/4000/282+++
CONCATENER("+++";Z2;"/";AA2;"/";AB2;"+++")

la 3è colonne (AB2) dans ce cas est convertie pour afficher 5 chiffres, donc
les 0 devant les valeurs.
Lorsque je concatène les 3 colonnes, les 0 devant les valeurs disparaissent.
S'agissant d'une communication structurée, les 5 chiffres ou valeurs doivent
impérativement être affichés (357/4000/00282 au lieu de 357/4000/282)

Qui peut m'aider à trouver la solution ?

D'avance un tout grand merci

bien cordi@lement,

Digero

6 réponses

1 2
Avatar
Aigle bavard

"velvet" a écrit dans le message de
news:c801mq$p3r$

Digero wrote:

Bonjour,

j'ai un petit problème lorsque je concatène 3 colonnes en EXCELL les
chiffres de la 3è colonne sont configurés en 5 chiffres avec affichage



d'un

ou deux zéros devant les valeurs inférieures à 10000.

357 4000 00282 +++357/4000/282+++
CONCATENER("+++";Z2;"/";AA2;"/";AB2;"+++")

la 3è colonne (AB2) dans ce cas est convertie pour afficher 5 chiffres,



donc

les 0 devant les valeurs.
Lorsque je concatène les 3 colonnes, les 0 devant les valeurs



disparaissent.

S'agissant d'une communication structurée, les 5 chiffres ou valeurs



doivent

impérativement être affichés (357/4000/00282 au lieu de 357/4000/282)

Qui peut m'aider à trouver la solution ?

D'avance un tout grand merci

bien ,

Digero






je n'aborderai que le probleme de la cellule contenant la valeur (ou le
texte??) "282"

=REPT(0;5-NBCAR(ta_cellule))&ta_cellule




Génial !


ça fonctionne.
Un tout grand merci.

Respects et Chapeau bas !

Bien cordialement

Digero


M'enfin (© Frankin) ... ?

Je vois un petit écueil : cette formule est valable pour extraire 5 car
mais lorsque la cellule en contient davantage ? Il faut adapter la
formule à chaque cellule ?
Quest-ce que ça fait si on conçoit cette formule en tablant sur le
chiffre le plus long (admettons 7 car) et qu'elle traite des chiffres
plus courts ?

Aigle curieux.



Avatar
velvet
Aigle bavard wrote:

"velvet" a écrit dans le message de
news:c801mq$p3r$

Digero wrote:

Bonjour,

j'ai un petit problème lorsque je concatène 3 colonnes en EXCELL les
chiffres de la 3è colonne sont configurés en 5 chiffres avec affichage




d'un

ou deux zéros devant les valeurs inférieures à 10000.

357 4000 00282 +++357/4000/282+++
CONCATENER("+++";Z2;"/";AA2;"/";AB2;"+++")

la 3è colonne (AB2) dans ce cas est convertie pour afficher 5 chiffres,




donc

les 0 devant les valeurs.
Lorsque je concatène les 3 colonnes, les 0 devant les valeurs




disparaissent.

S'agissant d'une communication structurée, les 5 chiffres ou valeurs




doivent

impérativement être affichés (357/4000/00282 au lieu de 357/4000/282)

Qui peut m'aider à trouver la solution ?

D'avance un tout grand merci

bien ,

Digero






je n'aborderai que le probleme de la cellule contenant la valeur (ou le
texte??) "282"

=REPT(0;5-NBCAR(ta_cellule))&ta_cellule




Génial !


ça fonctionne.
Un tout grand merci.

Respects et Chapeau bas !

Bien cordialement

Digero


M'enfin (© Frankin) ... ?

Je vois un petit écueil : cette formule est valable pour extraire 5 car
mais lorsque la cellule en contient davantage ? Il faut adapter la
formule à chaque cellule ?
Quest-ce que ça fait si on conçoit cette formule en tablant sur le
chiffre le plus long (admettons 7 car) et qu'elle traite des chiffres
plus courts ?

Aigle curieux.


Cette formule ne marche que dans le contexte expose par Digero.
Il est evident que si dans la base de donnees il y a des enregistrements
excedant 5 positions, le probleme est donc mal expose et cette
formule-la n'est pas du tout adaptee.




Avatar
Aigle bavard

Aigle bavard wrote:


"velvet" a écrit dans le message de
news:c801mq$p3r$

Digero wrote:

Bonjour,

j'ai un petit problème lorsque je concatène 3 colonnes en EXCELL les
chiffres de la 3è colonne sont configurés en 5 chiffres avec affichage





d'un

ou deux zéros devant les valeurs inférieures à 10000.

357 4000 00282 +++357/4000/282+++
CONCATENER("+++";Z2;"/";AA2;"/";AB2;"+++")

la 3è colonne (AB2) dans ce cas est convertie pour afficher 5
chiffres,





donc

les 0 devant les valeurs.
Lorsque je concatène les 3 colonnes, les 0 devant les valeurs





disparaissent.

S'agissant d'une communication structurée, les 5 chiffres ou valeurs





doivent

impérativement être affichés (357/4000/00282 au lieu de 357/4000/282)

Qui peut m'aider à trouver la solution ?

D'avance un tout grand merci

bien ,

Digero






je n'aborderai que le probleme de la cellule contenant la valeur (ou le
texte??) "282"

=REPT(0;5-NBCAR(ta_cellule))&ta_cellule




Génial !


ça fonctionne.
Un tout grand merci.

Respects et Chapeau bas !

Bien cordialement

Digero


M'enfin (© Frankin) ... ?

Je vois un petit écueil : cette formule est valable pour extraire 5
car mais lorsque la cellule en contient davantage ? Il faut adapter la
formule à chaque cellule ?
Quest-ce que ça fait si on conçoit cette formule en tablant sur le
chiffre le plus long (admettons 7 car) et qu'elle traite des chiffres
plus courts ?

Aigle curieux.



Cette formule ne marche que dans le contexte expose par Digero.
Il est evident que si dans la base de donnees il y a des enregistrements
excedant 5 positions, le probleme est donc mal expose et cette
formule-la n'est pas du tout adaptee.




Et si on table volontairement sur une chaîne trop longue ?
Genre =REPT(0;7-NBCAR(ta_cellule))&ta_cellule
Keski se passe si ue cellule de la colonne ne contient que 5 car par
exemple ? T'as déjà essayé ?
Aigle toujours curieux





Avatar
velvet
Aigle bavard wrote:

Et si on table volontairement sur une chaîne trop longue ?
Genre =REPT(0;7-NBCAR(ta_cellule))&ta_cellule
Keski se passe si ue cellule de la colonne ne contient que 5 car par
exemple ? T'as déjà essayé ?
Aigle toujours curieux



Non.
Et dans le cas present,l'utilisation d'une telle formule (avec un
parametre fixe, "7")releverait d'aucune logique. Si on ne sait pas
quelle peut-etre la longueur maximale que l'on pourrait trouver dans la
base de donnees, on ne peut pas arbitrairement fixer la valeur de ce
parametre.
En toute logique si on decide de la valeur 7, c'est que l'on sait que la
longueur des chaines n'excede pas 7.

Sinon, il faudrait calculer au prealable la longueur de la chaine et
poser des tests "SI" (de quelles natures?) pour afficher les "resultats"
(chaine de caracteres, message d'erreur? etc.... ???)

Avatar
Aigle bavard
Aigle bavard wrote:


Et si on table volontairement sur une chaîne trop longue ?
Genre =REPT(0;7-NBCAR(ta_cellule))&ta_cellule
Keski se passe si ue cellule de la colonne ne contient que 5 car par
exemple ? T'as déjà essayé ?
Aigle toujours curieux




Non.
Et dans le cas present,l'utilisation d'une telle formule (avec un
parametre fixe, "7")releverait d'aucune logique. Si on ne sait pas
quelle peut-etre la longueur maximale que l'on pourrait trouver dans la
base de donnees, on ne peut pas arbitrairement fixer la valeur de ce
parametre.
En toute logique si on decide de la valeur 7, c'est que l'on sait que la
longueur des chaines n'excede pas 7.

Sinon, il faudrait calculer au prealable la longueur de la chaine et
poser des tests "SI" (de quelles natures?) pour afficher les "resultats"
(chaine de caracteres, message d'erreur? etc.... ???)






Ouémé je cherchais plutôt à piger ce qui se passe quand l'extraction

prend une zone plus grande que la chaîne réellement contenue dans la
cellule. Genre "qui peut le plus peut le moins" ou bien ça te balance
une grosse insulte d'erreur ?

Aigle bavard (remarque, je pourrais essayer moi-même..)


Avatar
velvet
Aigle bavard wrote:

Aigle bavard wrote:


Et si on table volontairement sur une chaîne trop longue ?
Genre =REPT(0;7-NBCAR(ta_cellule))&ta_cellule
Keski se passe si ue cellule de la colonne ne contient que 5 car par
exemple ? T'as déjà essayé ?
Aigle toujours curieux





Non.
Et dans le cas present,l'utilisation d'une telle formule (avec un
parametre fixe, "7")releverait d'aucune logique. Si on ne sait pas
quelle peut-etre la longueur maximale que l'on pourrait trouver dans
la base de donnees, on ne peut pas arbitrairement fixer la valeur de
ce parametre.
En toute logique si on decide de la valeur 7, c'est que l'on sait que
la longueur des chaines n'excede pas 7.

Sinon, il faudrait calculer au prealable la longueur de la chaine et
poser des tests "SI" (de quelles natures?) pour afficher les
"resultats" (chaine de caracteres, message d'erreur? etc.... ???)






Ouémé je cherchais plutôt à piger ce qui se passe quand l'extraction

prend une zone plus grande que la chaîne réellement contenue dans la
cellule. Genre "qui peut le plus peut le moins" ou bien ça te balance
une grosse insulte d'erreur ?

Aigle bavard (remarque, je pourrais essayer moi-même..)


par exemple pour 123456789 soit 9 caracteres, on obtiendrait
REPT(0,(-2))& ...etc
qui signifie je repete "-2 fois" le caractere "0"

Et encore ce ne marche que si le contenu est du texte. Passke avec des
nombres avec virgule, c'est une autre histoire.
289.01 et 289.10 ne vont pas donner la meme longueur



1 2