Excel extraction caractères

Résolu
Utilisateur anonyme -  
 Utilisateur anonyme -
Bonsoir,

J’ai besoin d’extraire d’une colonne les chiffres de codes composés de lettres et de chiffres (AB50). J’utilise bien le =DROITE(A1;2) pour me prendre les 2 chiffres. Mais j’en ai à 3 chiffres (AB100) et là il me prend le B bien sûr.
Je ne peux pas convertir les codes de 4 positions sur 5, ils seront visibles.
J’ai tenté un format personnalisé avec les # sans succès.
Est-ce qu’il y a une formule à adapter (sans VBA).

Merci d’avance de votre aide.
A voir également:

8 réponses

skizoFred
 
Bonsoir,

tu as 2 solutions :

1- Sélectionne la colonne qui contient tes valeurs, puis vas dans 'Données' -> 'Convertir', choisis ensuite 'Largeur fixe' puis 'Suivant'. Positionne un "taquet" entre le 2ème et le 3ème caractère puis clique sur 'Terminé'. Au final tu as dans la 1ère colonne, tes 2 alpha. et dans la 2ème, les valeurs numériques.

2- Tu peux utiliser la formule STXT plutot que DROITE :
AB50 =STXT(cellule_a_gauche;3;3) te renvoie : 50
AB100 =STXT(cellule_a_gauche;3;3) te renvoie : 100

En gros tu as l'embarras du choix ...

;-)
5
Raymond PENTIER Messages postés 71826 Statut Contributeur 17 376
 
OK, tout cela est bel et bien, mais le résultat est toujours du texte, pas du numérique. Donc si jamais ce code devait être utilisé pour des calculs (peut-on savoir ?), il faudrait penser à écrire =CNUM(STXT(A1;3;3)).
Amitiés à tous et toutes.
3
Utilisateur anonyme
 
Bonjour,
Je viens de voir vos remarques.
Le chiffre extrait avec STXT est effectivement utilisé pour faire un calcul, et l’opération avait bien fonctionné hier soir.
Mais je note bien ta mise en garde Raymond et rajoute le CNUM pour fiabiliser davantage le format des cellules. Merci pour cette précision.

Merci encore et bien amicalement à vous tous.

PS. : J’ai un autre souci avec mon fichier et j’ouvre un nouveau fil
2
gbinforme Messages postés 15478 Statut Contributeur 4 727
 
bonjour

Est-ce qu’il y a une formule à adapter (sans VBA).

Tu peux essayer celle-ci, un peu longue mais elle fait ce que tu veux si j'ai compris le problème
=SI(ESTNUM(CNUM(DROITE(A1;3)));DROITE(A1;3);DROITE(A1;2))
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
eriiic Messages postés 25847 Statut Contributeur 7 279
 
Bonsoir,

Dans ton exemple je pense qu'excel te retourne 00 plutôt...
Si tu as tjs 2 lettres en début de ton code utilise:
=STXT(A1;3;50) qui t'extraira tous les caractères à partir du 3 ème

eric
1
Utilisateur anonyme
 
Bonsoir,
Parfait Eric.
Pour le 00 retourné oui bien sûr en demandant 2, mais le B récupéré c'était quand j'essayais avec 3, pour avoir ceux à 3 chiffres. C'était clair pour moi quand j'ai expliqué mais je voulais aller vite... trop vite, vue l'heure.
Merci également à Gbinforme.

Bonne nuit.

0
Vaucluse Messages postés 27336 Statut Contributeur 6 441
 
Bonjour Raymond.
Quel temps aux antilles....
Mais ..bizarre... j'ai testé la formule sans le CNUM et à partir de AB500, elle m'extrait 500 avec lesquels je peux faire n'importe quelle opérations sans problème etcela même en partant d'une cellule formatée texte?
Est tu sur que CNUM soit nécessaire?
BCRDLMNT
0
Raymond PENTIER Messages postés 71826 Statut Contributeur 17 376
 
Vaucluse, bonjour (ça fait toujours bizarre : Il est 1h20 du matin et je m'apprête à aller me coucher).
Il fait beau ces jours-ci, pas excessivement chaud (un petit 29°-30°), mais du vent, et de rares et brèves averses.

C'est vrai que cela marche parfois : tout dépend de la manipulation mathématique employée, mais aussi du formatage des cellules.
Tu vérifieras que ton 500, extrait avec STXT, est affiché à gauche de la cellule, comme du texte, et ne réagit pas si tu cliques sur l'icône "Ajouter une décimale" ou si tu lui appliques un format monétaire. Mais si tu intègres cette cellule dans une formule, Excel saura transformer le texte "500" en valeur 500,00 et effectuer l'opération demandée.
Alors, par précaution, j'ajoute toujours CNUM (ça ne mange pas de pain ...).

Toutes mes amitiés.
0