Séparer nombre et lettre(s) d'une référence combinée

Bonjour,

C'est la première fois que je poste sur un forum informatique...

Je suis débutante et là, je tourne en rond !

En cherchant de part et d'autre sur internet, j'ai trouvé une formule censée me permettre de séparer les nombres des lettres (quand il y en a), mais pour une raison que je ne m'explique pas, ça marche dans un cas mais pas dans l'autre !!

Les formules utilisées :

col. B pour extraire le nombre avant l'espace : =SI(NB.SI(A2;"* *");(GAUCHE(A2;NBCAR(A2)-CHERCHE(" ";A2;1)));A2)

col. C pour extraire la(les) lettre(s) après l'espace : =SI(NB.SI(A2;"* *");(DROITE(A2;NBCAR(A2)-CHERCHE(" ";A2;1)));"")

et le résultat obtenu :

Col. A=Départ // Col. B=Nbr extrait // Col. C=Lettre(s) extraites

11 // 11

110 // 110

1100 // 1100

1101 // 1101

1130 // 1130

1099 A // 1 // A

1099 B // 1 // B

1110 A-L // 111 // A-L

1110 M-DD // 1110 // M-DD

1115 A,B // 111 // A,B

Pourquoi ça marche pour le 1110 suivi de M-DD et pas le 1110 suivi de A-L (et les autres références combinées) ???

Je précise que dans les références de départ, il n'y a bien qu'un seul espace séparant le nombre de la(les) lettre(s) et qu'il n'y a aucun espace caché au début ou à la fin de la cellule.

Merci d'avance pour votre précieuse aide !

Bonjour,

à tester,

=GAUCHE(GAUCHE(A2;TROUVE("/";A2)-1);4)*1

bonjour

a tester

saisir en b1

GAUCHE(a1;CHERCHE(" ";a1))

ensuite saisir en c1

STXT(a1;NBCAR(b1);30)

cordialement

Bonjour tulipe_4,

Merci beaucoup, ça fonctionne parfaitement pour les références qui sont combinées avec des lettres.

Mais, pour les références qui ne sont pas associées à des lettres, j'obtiens...

#VALEUR! dans la colonne B car il ne trouve pas d'espace

#VALEUR! dans la colonne C car il ne trouve pas de texte

Dans la colonne B, j'ai donc réintégré la condition de ma première formule pour que, s'il n'y a pas d'espace, ça renvoie la valeur de la colonne A

=SI(NB.SI(A1;"* *");( GAUCHE(A1;CHERCHE(" ";A1)));A1)

ça fonctionne ! Mais je ne sais pas si c'est la meilleure façon de faire !

Pour la colonne B, il faudrait que je mette une condition du genre : si la cellule ne contient pas de texte (ou de lettres, car ma colonne A, du fait qu'elle est mixte, est en format texte) >>> renvoyer le contenu de la colonne A

Une idée de formule pour cette condition ?

Bonne journée !


sabV a écrit :

Bonjour,

à tester,

=GAUCHE(GAUCHE(A2;TROUVE("/";A2)-1);4)*1

bonjour sabV,

merci pour cette proposition de formule, mais malheureusement, elle ne fonctionne pas, j'obtiens #VALEUR! quelle que soit la référence, combinée ou non avec des lettres !

bonne journée

ALP a écrit :

Mais, pour les références qui ne sont pas associées à des lettres, j'obtiens...

#VALEUR! dans la colonne C car il ne trouve pas de texte

Ah ben non, c'est plus le cas !!! c'est ce que j'avais obtenu au moment où j'ai intégré la formule, mais maintenant ça renvoie dans la colonne C le dernier chiffre du nombre :

11 > 1

110 > 0

1062 > 2

c'est à n'y rien comprendre !!!

bonjour

le mieux est que tu fournisses une piecejointe avec qques exemples variés de maniere a mettre au point une formule generique

pas de capture d'ecran

cordialement

Quels résultats veux-tu obtenir ? avec ce jeu de données ...

11 // 11

110 // 110

1100 // 1100

1101 // 1101

1130 // 1130

1099 A // 1 // A

1099 B // 1 // B

1110 A-L // 111 // A-L

1110 M-DD // 1110 // M-DD

1115 A,B // 111 // A,B

voici mon fichier Excel avec ce que je voudrais obtenir

Autre question, quand je colle une formule dans une cellule, je n'arrive parfois plus à obtenir le résultat, mais seulement le texte de la formule.

Ce n'est pourtant pas une question d'affichage de la formule, celui-ci étant bien désactivé !

bonjour

normalement .....

78alp2.xlsx (13.29 Ko)

cordialement

Impeccable, merci beaucoup, ça fonctionne au top pour les types de références que j'avais indiqués jusque-là....

.... sauf que, sur les 3470 références (de documents) contenues dans le tableau, j'en ai découvert une petite centaine qui se trouvent sous une autre forme (Cf. lignes rajoutées dans le fichier) !

Et là, ça commence à se compliquer, il faudrait intégrer des "OU" ou commencer par faire des "remplacer".....

Bref, vu le nombre pas trop important, il vaut peut-être mieux que je corrige ces lignes manuellement, non ?

19alp3.xlsx (14.51 Ko)

re

bon; je tente le coup ;dis moi si cela te conviens car la partie extraite des lettres n'a plus tout a fait le meme visuel ,est-ce catastrophique (suppression du "-")

15alp4.xlsx (14.80 Ko)

cordialement

ouhh là ! Ca se complique ! Je ne comprends pas grand chose à la formule !!

Non, à priori ça ne devrait pas être gênant que les tirets ou virgules disparaissent entre les lettres !

J'ai un second fichier de 4700 lignes sur lequel je dois appliquer le même processus, je testerai cela lundi !

En attendant, petit détail dans ta formule, je découvre qu'on peu exprimer un "OU" par une barre oblique {" "\"-"} et ça c'est très utile !

Merci beaucoup pour ton aide et très bon week-end !

Une variante avec expression régulière

Function ChercheChaine(chaine, pattern)
  Set obj = CreateObject("vbscript.regexp")
  obj.pattern = pattern
  Set a = obj.Execute(chaine)
  If a.Count > 0 Then ChercheChaine = a(0) Else ChercheChaine = ""
End Function
tulipe_4 a écrit :

re

bon; je tente le coup ;dis moi si cela te conviens car la partie extraite des lettres n'a plus tout a fait le meme visuel ,est-ce catastrophique (suppression du "-")

cordialement

Bonjour tulipe_4

J'ai testé les deux formules et..... GROS GROS MYSTERE... ça fonctionne bien au début et puis, à partir d'un certain point, ça ne fonctionne plus !! A s'arracher les cheveux ! Je ne trouve aucune explication à cela !

Dans le fichier, feuille 2, j'ai mis en colonne les différentes étapes appliquées aux données !

Pour les colonnes vertes, j'ai copié-collé tes formules telles quelles à partir de la feuille 1, sans modifier quoi que ce soit !

Si tu comprends la raison de ce dysfonctionnement soudain.... je suis preneuse !

16alp5.xlsx (25.67 Ko)
ALP a écrit :

J'ai testé les deux formules et..... GROS GROS MYSTERE... ça fonctionne bien au début et puis, à partir d'un certain point, ça ne fonctionne plus !! A s'arracher les cheveux ! Je ne trouve aucune explication à cela !

[...]

Pour les colonnes vertes, j'ai copié-collé tes formules telles quelles à partir de la feuille 1, sans modifier quoi que ce soit !

Si tu comprends la raison de ce dysfonctionnement soudain.... je suis preneuse !

Ho ho, j'ai trouvé une demi-explication !!! En copiant-collant la formule dans la feuille 2, un "(Feuil1!$A1)" ne s'était pas transposé en C5 à cause du dollar. En corrigeant en C5, ça fonctionne pour toutes les lignes !!!

Par contre, je ne comprends toujours pas pourquoi, malgré cette erreur dans la formule, ça fonctionnait quand même à moitié, c'est à dire pour une partie des nombres simples et pas pour les autres !!!

Merci encore à tulipe_4 et à tous ceux qui se sont penchés sur ce problème !!

Rechercher des sujets similaires à "separer nombre lettre reference combinee"