Forum Clubic

[Résolu] [EXCEL] Besoin d'aide pour une formule - sépar des données en fonction d'autres d

Bonjour à tous,

je suis à la recherche d’une formule qui me permettrait de trier le contenu de cellules afin de les séparer en deux parties en fonction d’un critère déterminé.

Voir que c’est pas très clair, je vais essayer de m’expliquer par un exemple :

Cellule A1 :
Q WERT YEIIAS IEOQWUE AA HDKWJJKDWOJWD
Cellule A2 :
A DJSKSJDL DLSKADMOW AA JOKFDWOIOJ HWHJDI
Cellule A3 :
ANDKOWQ KDKAS KA:KDSKD BB HNOIJPOIWEJD JWODK

Il faudrait que je puisse séparer les formules en 2 tels que :
Cellule B1 :
Q WERT YEIIAS IEOQWUE
Cellule C1 :
AA HDKWJJKDWOJWD
Cellule B2
A DJSKSJDL DLSKADMOW
Cellule C2
AA JOKFDWOIOJ HWHJDI
Cellule B3
ANDKOWQ KDKAS KA:KDSKD
Cellule C3
BB HNOIJPOIWEJD JWODK

Bien sûr, les parties avant les AA ou BB sont de longueurs vriables, et AA et BB ne sont pas les seuls critères (j’ai 37 combinaisons différentes que j’ai résumées dans un tableau).

Est ce que quelqu’un sait comment je pourrais faire ça ??

Merci beaucoup par avance,

Eneas88

Tu peux rechercher le critère dans la chaine de texte grace à la fonction "CHERCHE". Cette fonction renvoie la position du critère dans la chaine.

Tu peux ensuite utiliser les fonctions "DROITE" et "GAUCHE" pour retourner la chaine de texte à droite et à gauche du critère.

L’hypothèse pour que cela marche est qu’il faut que ton critère n’apparaisse qu’une seule fois dans ta chaine.

Ainsi, dans ton exemple :

Cellule B1 : =GAUCHE(A1;CHERCHE("AA";A1)-1)
Cellule C1 : =DROITE(A1;NBCAR(A1)-CHERCHE("AA";A1)+1)

Merci de ta réponse :slight_smile:

Étant donné que la valeur AA varie, est ce qu’il serait possible de faire en sorte que si la fonction ne trouve pas AA, elle cherche BB, puis si elle ne trouve pas BB, elle cherche CC, etc ??

Ou alors, qu’au premier chiffre qu’il s’arrête de recopier le contenu de la cellule au premier chiffre qu’il rencontre ?

(Ex :

Cellule A1 :
djwqidjqiwd iqjwdiqjw 123 dqwoewokd
Cellule B1 :
djwqidjqiwd iqjwdiqjw
Cellule C1 :
123 dqwoewokd

C’est faisable avec une macro.