Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Si cellule contient la lettre "D" alors...

jbdubreuil

XLDnaute Occasionnel
Bonjour,

J'ai decouvert ce forum il y a qq jours et j'avoue etre impressionné par la qualité de ce site. J'en profite donc pour apprendre et approfondir mes connaissance en Xcel... Voici un petit probleme:

J'ai une cellule (a1) avec du texte
J'aimerais une formule qui puisse me dire si la cellule (a1) contient la lettre "D".

Pour le moment, j'utilise la fonction suivante qui marche tres bien (en anglais):
=Search("d";a1) qui me donne la position de la lettre "d" dans la cellule...ou #VALUE si la cellule ne contient pas la lettre "d".
J'imbrique ensuite une autre fonction, if(iserror(search("d";a1));"NON";"OUI")

Y aurait il une autre formule?
 

Luna44

XLDnaute Nouveau
Bonjour, je me permet de rebondir car j'ai un peu la même problématique que les précédentes.
J'ai une colonne contenant des identifiants, je veux que si l'identifiant contient la lettre C alors Contrat, si l'identifiant contient la lettre S alors Supplémentaire et si l'identifiant contient la lettre P alors Public.
J'ai essayé avec la formule SI(ESTNUM(CHERCHE, j'y arrive bien mais qu'avec une seule condition. Je ne sais pas si je dois utiliser des ET ou OU en plus ou si une autre formule serait plus adaptée.

Merci d'avance.
 

job75

XLDnaute Barbatruc
Bonjour Luna44,
Code:
=SUPPRESPACE(REPT("Contrat ";ESTNUM(CHERCHE("c";A1)))&REPT("Supplémentaire ";ESTNUM(CHERCHE("s";A1)))&REPT("Public";ESTNUM(CHERCHE("p";A1))))
La fonction REPT prend moins d'octets en mémoire que la fonction SI.

A+
 

eriiic

XLDnaute Barbatruc
Bonjour à tous,

tu aurais du créer ton propre sujet.
Cette lettre n'est pas toujours en même position dans l'identifiant des fois ?
Si oui, par exemple en 2ème positition :
VB:
=SIERREUR(CHOISIR(CHERCHE(STXT(A14;2;1);"CSP");"Contrat";"Supplémentaire";"Public");"")
eric
 

Nomes

XLDnaute Nouveau
Bonjour à tous, je recherche une formule pour faire parvenir automatiquement des lignes d'un tableau à l'autre :
TABLEAU 1 :
COLONNE1 | COLONNE2 | COLONNE3 | COLONNE4
0_2567 | 1 | a | aze
2568 | 3 | b | fd
2569 | 2 | e | th
0_2571 | 6 | h | de

J'aimerais que dans mon TABLEAU 2 il apparaisse uniquement les lignes de mon tableau 1 comprenant "0_" de la COLONNE1. Est-ce que cela est possible ? j'ai essayé avec des formules de type : recherche() ; trouve(), mais je ne trouve pas la solution.
 

job75

XLDnaute Barbatruc
Bonjour Nomes, bienvenue sur XLD,

Formule matricielle en F2 :
Code:
=SIERREUR(INDEX(A:A;PETITE.VALEUR(SI(ESTNUM(TROUVE("0_";$A$2:$A$5));LIGNE($A$2:$A$5));LIGNE(A1)));"")
à valider par Ctrl+Maj+Entrée et tirer vers la droite et le bas.

A+
 

Pièces jointes

  • Classeur1.xlsx
    9.5 KB · Affichages: 1

Nomes

XLDnaute Nouveau
Bonjour Job75, tout d'abord, je tenais à vous remercier pour votre réponse rapide.

Deuxièmement, je tenais aussi à me présenter, car je ne l'avais pas fait lors de ma demande.

J'ai un parcours mélangé entre du management humain et du design. Aujourd'hui, je suis économiste dans une entreprise d'agencement. J'avais besoin de cette formule pour un tableau de suivi de commande. Merci pour cette formule miraculeuse. Est-il possible de rajouter une contrainte en indiquant que la formule trouve uniquement les "0_" mis sur les 2 premiers caractères de la cellule ?

Exemple :
0_QT010 - adresse
QT010_Adresse

Si besoin, je reste disponible.
 

Discussions similaires

Réponses
5
Affichages
353
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…