Traduire un môt en chiffre
Résolu/Fermé
A voir également:
- Traduire un môt en chiffre
- Traduire une page web - Guide
- Piratage facebook changer mot de passe - Guide
- Mettre un mot de passe sur un dossier - Guide
- Application pour écrire les chiffre en lettre - Télécharger - Outils professionnels
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
4 réponses
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
643
7 déc. 2009 à 17:18
7 déc. 2009 à 17:18
Bonjour,
Une solution un peu "simpliste" à partir de la fonction SUBSTITUE. Un exemple ici :
http://www.cijoint.fr/cjlink.php?file=cj200912/cijKyb1bxP.xls
Il faut afficher les colonnes masquées pour comprendre le fonctionnement.
Il y a peut-être une solution matricielle mais je n'ai pas trouvé
A+
EDIT : il y a des macros dans mon exemple, ne pas en tenir compte, elles ne servent pas se sont des résidus d'essais...
Une solution un peu "simpliste" à partir de la fonction SUBSTITUE. Un exemple ici :
http://www.cijoint.fr/cjlink.php?file=cj200912/cijKyb1bxP.xls
Il faut afficher les colonnes masquées pour comprendre le fonctionnement.
Il y a peut-être une solution matricielle mais je n'ai pas trouvé
A+
EDIT : il y a des macros dans mon exemple, ne pas en tenir compte, elles ne servent pas se sont des résidus d'essais...
JvDo
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
857
8 déc. 2009 à 17:22
8 déc. 2009 à 17:22
Bonjour et merci,
je n'ai toujours pas trouvé comment concaténer en matriciel sans passer par MCONCAT.
Je ne crois pas que Morefunc soit porté sur 2007. Donc ça peut devenir problématique.
En plus, le comportement de certaines fonctions est "conflictuel ou curieux" en matriciel. C'est pour cela que je me suis rabattu sur CHOISIR().
Par exemple, =SOMMEPROD((INDEX($B$1:$B$26;CODE(STXT($F$2;LIGNE(INDIRECT("1:"&NBCAR(DROITE($F$2;15))));1))-64))*(10^(NBCAR(DROITE($F$2;15))-LIGNE(INDIRECT("1:"&NBCAR(DROITE($F$2;15))))))) qui fournit une solution a priori équivalente à la 1ère proposition en s'appuyant sur une table de transcodage en A1:B26, ne fonctionne pas lorsque cette formule est dans une seule cellule. En revanche, si on l'inscrit dans une matrice d'au moins 2 cellules, elle fonctionne et répète le bon résultat dans chaque cellule.
Pour moi c'est une énigme.
cordialement
je n'ai toujours pas trouvé comment concaténer en matriciel sans passer par MCONCAT.
Je ne crois pas que Morefunc soit porté sur 2007. Donc ça peut devenir problématique.
En plus, le comportement de certaines fonctions est "conflictuel ou curieux" en matriciel. C'est pour cela que je me suis rabattu sur CHOISIR().
Par exemple, =SOMMEPROD((INDEX($B$1:$B$26;CODE(STXT($F$2;LIGNE(INDIRECT("1:"&NBCAR(DROITE($F$2;15))));1))-64))*(10^(NBCAR(DROITE($F$2;15))-LIGNE(INDIRECT("1:"&NBCAR(DROITE($F$2;15))))))) qui fournit une solution a priori équivalente à la 1ère proposition en s'appuyant sur une table de transcodage en A1:B26, ne fonctionne pas lorsque cette formule est dans une seule cellule. En revanche, si on l'inscrit dans une matrice d'au moins 2 cellules, elle fonctionne et répète le bon résultat dans chaque cellule.
Pour moi c'est une énigme.
cordialement
Bonsoir a vous tous
Merci de vos réponses, j'ai également ouvert une autre discutions sur un autre forum
je vous invite a regarder les réponses sur le lien ci-dessous.
La communauté d'entre-aide est vraiment fabuleuse!!!!!!
Encore merci d'avoir participé a cette discutions
http://www.veriti.net/forum2/viewtopic.php?f=1&t=2447&p=16218#p16218
Merci de vos réponses, j'ai également ouvert une autre discutions sur un autre forum
je vous invite a regarder les réponses sur le lien ci-dessous.
La communauté d'entre-aide est vraiment fabuleuse!!!!!!
Encore merci d'avoir participé a cette discutions
http://www.veriti.net/forum2/viewtopic.php?f=1&t=2447&p=16218#p16218
JvDo
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
857
8 déc. 2009 à 03:07
8 déc. 2009 à 03:07
Bonsoir,
si le mot à convertir est en F2 et en MAJUSCULES :
1ère proposition : (limitée à 15 caractères pour cause de conversion numérique)
=SOMMEPROD(CHOISIR(CODE(STXT($F$2;LIGNE(INDIRECT("1:"&NBCAR($F$2)));1))-64;1;1;2;2;3;3;4;4;4;5;5;5;6;6;6;7;7;7;8;8;9;9;9;0;0;0)*(10^(NBCAR($F$2)-LIGNE(INDIRECT("1:"&NBCAR($F$2))))))
validation par CTRL+MAJ+ENTER
2ème proposition : (limitée à 255 caractères)
utiliser la fonction MCONCAT de la bibliothèque MOREFUNC de Laurent Longre.
=MCONCAT(CHOISIR(CODE(STXT($F$2;LIGNE(INDIRECT("1:"&NBCAR($F$2)));1))-64;1;1;2;2;3;3;4;4;4;5;5;5;6;6;6;7;7;7;8;8;9;9;9;0;0;0))
validation par CTRL+MAJ+ENTER
3ème proposition : (limitée à 30 caractères, numérique "amélioré")
=SI(ET(NBCAR($F$2)>15;NBCAR($F$2)<30);SOMMEPROD(CHOISIR(CODE(STXT(GAUCHE($F$2;NBCAR($F$2)-15);LIGNE(INDIRECT("1:"&NBCAR($F$2)-15));1))-64;1;1;2;2;3;3;4;4;4;5;5;5;6;6;6;7;7;7;8;8;9;9;9;0;0;0)*(10^(NBCAR($F$2)-15-LIGNE(INDIRECT("1:"&NBCAR($F$2)-15)))))&"";"")&SOMMEPROD(CHOISIR(CODE(STXT(DROITE($F$2;15);LIGNE(INDIRECT("1:"&NBCAR(DROITE($F$2;15))));1))-64;1;1;2;2;3;3;4;4;4;5;5;5;6;6;6;7;7;7;8;8;9;9;9;0;0;0)*(10^(NBCAR(DROITE($F$2;15))-LIGNE(INDIRECT("1:"&NBCAR(DROITE($F$2;15)))))))&""
ation par CTRL+MAJ+ENTER
En dehors des formules, il y a toutes les possibilités de VBA.
cordialement
si le mot à convertir est en F2 et en MAJUSCULES :
1ère proposition : (limitée à 15 caractères pour cause de conversion numérique)
=SOMMEPROD(CHOISIR(CODE(STXT($F$2;LIGNE(INDIRECT("1:"&NBCAR($F$2)));1))-64;1;1;2;2;3;3;4;4;4;5;5;5;6;6;6;7;7;7;8;8;9;9;9;0;0;0)*(10^(NBCAR($F$2)-LIGNE(INDIRECT("1:"&NBCAR($F$2))))))
validation par CTRL+MAJ+ENTER
2ème proposition : (limitée à 255 caractères)
utiliser la fonction MCONCAT de la bibliothèque MOREFUNC de Laurent Longre.
=MCONCAT(CHOISIR(CODE(STXT($F$2;LIGNE(INDIRECT("1:"&NBCAR($F$2)));1))-64;1;1;2;2;3;3;4;4;4;5;5;5;6;6;6;7;7;7;8;8;9;9;9;0;0;0))
validation par CTRL+MAJ+ENTER
3ème proposition : (limitée à 30 caractères, numérique "amélioré")
=SI(ET(NBCAR($F$2)>15;NBCAR($F$2)<30);SOMMEPROD(CHOISIR(CODE(STXT(GAUCHE($F$2;NBCAR($F$2)-15);LIGNE(INDIRECT("1:"&NBCAR($F$2)-15));1))-64;1;1;2;2;3;3;4;4;4;5;5;5;6;6;6;7;7;7;8;8;9;9;9;0;0;0)*(10^(NBCAR($F$2)-15-LIGNE(INDIRECT("1:"&NBCAR($F$2)-15)))))&"";"")&SOMMEPROD(CHOISIR(CODE(STXT(DROITE($F$2;15);LIGNE(INDIRECT("1:"&NBCAR(DROITE($F$2;15))));1))-64;1;1;2;2;3;3;4;4;4;5;5;5;6;6;6;7;7;7;8;8;9;9;9;0;0;0)*(10^(NBCAR(DROITE($F$2;15))-LIGNE(INDIRECT("1:"&NBCAR(DROITE($F$2;15)))))))&""
ation par CTRL+MAJ+ENTER
En dehors des formules, il y a toutes les possibilités de VBA.
cordialement
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
643
8 déc. 2009 à 14:26
8 déc. 2009 à 14:26
Bravo,
Magnifique solution matricielle j'avais séché sur le sujet ....
A+
Magnifique solution matricielle j'avais séché sur le sujet ....
A+