Bonjour,
Je vais essayer d’être clair
J’ai un gros fichier de données avec x lignes et y colonnes.
Je joins au présent message le fichier Excel sur lequel je travaille
Certaines valeurs ou parties de valeurs présentes dans les cellules doivent m’indiquer si “OUI” ou “NON” je dois prendre en compte la ligne en question.
Exemple_01 : si dans la colonne “P” je lis la valeur “930003”, alors ma fonction de test doit m’afficher le résultat “NON” car je ne dois pas prendre en compte les lignes dont la colonne “P” contient cette valeur;
En bref, je dois actuellement tester les valeurs ou parties de valeurs de 9 colonnes.
Le premier hic est que pour 2 de ces colonnes (cf. colonnes “N” et “Y”), je dois tester non pas la valeur mais une partie de la valeur (ou sous-chaînes de caractères… je ne connais pas bien le nom usuel).
Exemple_02 : si dans la colonne “N” je lis la sous-chaîne “REFON” (comme dans “PROJET REFONTE ETABLISSEMENT”, par exemple), alors ma fonction de test doit m’afficher le résultat “NON” car je ne dois pas prendre en compte les lignes dont la colonne “N” contient cette sous-chaîne;
Pour se faire, j’avais trouver sur le net la fonction suivante me permettant de chercher un bout de texte dans une cellule :
=SI(ESTNUM(CHERCHE(“REFON”;[@[ref_client]]));“NON”;“OUI”)
Cette fonction marche parfaitement, mais ne répond pas pleinement au besoin car oblige à imbriquer de nombreuses fonctions “SI”, etc.
Ceci étant, ayant beaucoup de tests à faire, pour faciliter l’évolutivité de la formule (ajout suppression de valeurs et parties de valeurs à chercher) et pour éviter de faire trop d’empilements de la fonction “SI”, j’ai créé un tableau dans l’onglet “PARAM” contenant, par colonne à tester, une liste (facilement évolutive) de valeurs et parties de valeurs à chercher. De fait, chaque liste a été nommé (une par colonne à tester).
Exemple_03 : Dans l’onglet “PARAM”, la liste qui doit filtrer de la colonne P (qui s’appelle [@compte]) a été nommée “FILTRE_P”;
J’ai ainsi trouvé une formule me permettant de tester une cellule selon une liste de mots :
=SI(NB.SI(FILTRE_P;[@compte])>0; “NON”;“OUI”)
Cette fonction aussi marche parfaitement, mais ne répond pas pleinement au besoin car cette formule va chercher les termes exactes contenus dans la liste de filtre, alors que pour 2 des colonnes à tester (cf. colonnes “N” et “Y”), je cherche des parties de valeurs…
Et là je bloque
Je ne sais pas si je suis clair en disant que je cherche une formule qui teste tout ou partie d’une cellule en fonction d’une liste (nommée ou plage de données) contenant elle-même des valeurs à chercher ou partie de valeurs à chercher.
Y a-t-il une fusion à faire entre ces 2 formuleRECHERCHE.xlsx (2,0 Mo)
s ou existe-t-il une autre solution ?
Sachant que je ne sais pas faire de VBA ou autre macro, pouvez-vous m’aider ??
D’avance merci d’avoir lu,
Bravo à ceux qui auront compris mon problème,
Félicitation à celui qui résolvera ce problème.