[RESOLU] Formatage numéro de compte (avec lettres)

dieu08

XLDnaute Occasionnel
Bonjour,

Je suis dans une situation de blocage pour un formatage de compte bancaire (en particulier les comptes contenant des lettres).

Pour être cimple : j'utilise un progiciel qui vient coller des données à partir d'un fichier texte dans un onglet Excel (impossible pour moi d'intervenir ici). A partir de là, je récupère les données et je peux réaliser des macros.

Dans mon fichier exemple, lorsque je récupère les données elles sont le plus souvent justes et je les formate avec un format personnalisé "00000000000".

Par contre, comme pour la cellule A12 (avec une lettre), il m'est impossible de faire fonctionner le formatage personnalisé (qui fonctionne pour les autres références), confer cellule C12.

Dans le fichier texte, la donnée est à "0764087E023", je récupère "7,64087E+28" et je souhaite au final obtenir "0764087E023".

Je ne trouve aucune solution. Auriez-vous des pistes à me suggérer ?

Merci.
 

Pièces jointes

  • formatage_cpte.xlsm
    11.5 KB · Affichages: 57
  • formatage_cpte.xlsm
    11.5 KB · Affichages: 66
  • formatage_cpte.xlsm
    11.5 KB · Affichages: 63
Dernière édition:

st007

XLDnaute Barbatruc
Re : Formatage numéro de compte (avec lettres)

Bonjour,

pas très folichon, mais coller précédé de '
ou essayer d'imposer un format texte avant le collage des valeurs
c'est sure qu'avec E, excel interprète du scientifique
 
Dernière édition:

Modeste geedee

XLDnaute Barbatruc
Re : Formatage numéro de compte (avec lettres)

Dans le fichier texte, la donnée est à "0764087E023", je récupère "7,64087E+28" et je souhaite au final obtenir "0764087E023".
Merci.

c'est donc à l'importation dans Excel qu'il faut préciser que la colonne adresse est de type TEXTE
Utiliser l'assistant d'importation et a l'étape 3 préciser : TEXTE au lieu de standard
 

Pièces jointes

  • Capture.JPG
    Capture.JPG
    54.9 KB · Affichages: 63
  • Capture1.JPG
    Capture1.JPG
    62.4 KB · Affichages: 62
  • Capture.JPG
    Capture.JPG
    54.9 KB · Affichages: 58
  • Capture1.JPG
    Capture1.JPG
    62.4 KB · Affichages: 70
  • Capture.JPG
    Capture.JPG
    54.9 KB · Affichages: 60
  • Capture1.JPG
    Capture1.JPG
    62.4 KB · Affichages: 57

pierrejean

XLDnaute Barbatruc
Re : Formatage numéro de compte (avec lettres)

Bonjour dieu08 (et moi qui le croyais unique !!!!)

Un essai

Mais je ne peux garantir qu'il couvrira toutes les possibilités
A tester donc sur d'autres expressions

Edit : Salut à tous (je regarde)
 

Pièces jointes

  • formatage_cpte.xlsm
    22.7 KB · Affichages: 43
  • formatage_cpte.xlsm
    22.7 KB · Affichages: 54
  • formatage_cpte.xlsm
    22.7 KB · Affichages: 54

dieu08

XLDnaute Occasionnel
Re : Formatage numéro de compte (avec lettres)

c'est donc à l'importation dans Excel qu'il faut préciser que la colonne adresse est de type TEXTE
Utiliser l'assistant d'importation et a l'étape 3 préciser : TEXTE au lieu de standard

Bonjour,

Malheureusement, je ne peux agir sur cette partie car je récupère directement les données dans le fichier Excel.

Merci tout de même.
 

dieu08

XLDnaute Occasionnel
Re : Formatage numéro de compte (avec lettres)

Bonjour dieu08 (et moi qui le croyais unique !!!!)

Un essai

Mais je ne peux garantir qu'il couvrira toutes les possibilités
A tester donc sur d'autres expressions

Edit : Salut à tous (je regarde)

Bonjour pierrejean,

Je fais parti d'une délégation territoriale divine ;-)

Ca me semble tout à fait correspondre à mes attentes. Je vais tester sur d'autres expressions.

Pourrais-tu me decrypter ton code si tu en as la possibilité ?

Merci encore.
 

Victor21

XLDnaute Barbatruc
Re : Formatage numéro de compte (avec lettres)

Bonjour, dieu, bonjour, Pierrejean :).
Bonjour,

Cette formule (d'ailleurs que signifie le "10^" ?) fonctionne partiellement.

Car une fois que je récupère la valeur formatée, je ne parviens pas à lui apposer un format personnalisé "00000000000".

Merci.

10 ^ n signifie 10 puissance n.

Les formats personnalisés s'appliquent aux nombres en base 10, et une chaîne de caractères contenant une ou des lettres n'est pas considérée en tant que nombre.
Si vous voulez un n° de compte à 11 caractères, essayez :

=REPT("0";11-NBCAR(A12/(10^(DROITE(A12;2)-5))&"E"&DROITE(A12;2)))&A12/(10^(DROITE(A12;2)-5))&"E"&DROITE(A12;2)
 

pierrejean

XLDnaute Barbatruc
Re : Formatage numéro de compte (avec lettres)

Re

je détricote ce que fait Excel pour arriver à "7,64087E+28" a partir de "0764087E023"
Il prend
764087 et pour avoir un seul chiffre divise par 10^5 ,pour compenser il note E 23+5
J'en déduis que 5 est la longueur du nombre sans le zéro initial -1
Donc je
supprime la virgule
remplace le + par 0
évalue ce qui se trouve Apres le E+
évalue la longueur du nombre -1 (dans ce cas on aboutit à 5)
recompose la puissance (ici 28-5)
recompose le string complet (on abouti à
764087E023)
Enfin j'ajoute autant de 0 en tête pour arriver à 11 alphanumeriques
 

Pièces jointes

  • formatage_cpte.xlsm
    23.1 KB · Affichages: 54
  • formatage_cpte.xlsm
    23.1 KB · Affichages: 61
  • formatage_cpte.xlsm
    23.1 KB · Affichages: 59

dieu08

XLDnaute Occasionnel
Re : Formatage numéro de compte (avec lettres)

Bonjour, dieu, bonjour, Pierrejean :).


10 ^ n signifie 10 puissance n.

Les formats personnalisés s'appliquent aux nombres en base 10, et une chaîne de caractères contenant une ou des lettres n'est pas considérée en tant que nombre.
Si vous voulez un n° de compte à 11 caractères, essayez :

Cette formule fonctionne parfaitement Victor21. Merci.

Malheureusement, j'aime comprendre ce que je fais dans mes fichiers et je ne comprends pas le "A12/10^(DROITE(A12;2)-5))". Je ne saisis pas trop à quoi cela aboutit...

Si tu as un peu de temps pour m'éclairer...

Merci d'avance.
 

Victor21

XLDnaute Barbatruc
Re : Formatage numéro de compte (avec lettres)

Re,

0764087E023 est considéré par Excel comme un nombre en affichage scientifique, soit 764087*10 puissance 23, ou 7,64087*10 puissance 28.
Droite(A12;2) renvoie les deux derniers cacactères de A12, soit 28
Droite(A12;2)-5 est donc égal à 23
A12/(10^(DROITE(A12;2)-5)) est donc égal à A12 divisé par 10 puissance 23
la partie &"E"&DROITE(A12;2) colle à la suite un E et un 28.
NBCAR(A12/(10^(DROITE(A12;2)-5))&"E"&DROITE(A12;2)) renvoie le nombre de caractères ainsi obtenus,
et REPT("0";11-NBCAR... ajoute un ou des zéros à gauche du résultat obtenu pour atteindre 11 caractères.
:)
J'espère être clair...
Cette explication ressemble étrangement -ou pas ;) - à celle de pierrejean.
 

dieu08

XLDnaute Occasionnel
Re : Formatage numéro de compte (avec lettres)

:confused:
le fichier texte est-il accessible à un moment ou autre ???
si le fichier texte est accessible , l'usage de l'assistant d'importation est possible !!!

Bonjour,

Je peux y accèder car il est sur un serveur mais impossible d'agir sur l'import.

Pierrejean et Victor21 ont résolus le problème avec la même base de reflexion.

Je vais clore cette demande.

Merci.
 

Discussions similaires

Statistiques des forums

Discussions
312 027
Messages
2 084 762
Membres
102 655
dernier inscrit
STA82700