OVH Cloud OVH Cloud

Rechercher une cellule texte dans une colonne

2 réponses
Avatar
Gilles
Bonjour

J'ai deux listes de clients, A et B qui se recoupent partiellement. J'ai
déjà envoyé un mailing à la liste A, et désire en envoyer un autre aux noms
de la liste B qui ne figurent pas sur la liste A.

L'approche que j'ai suivie jusqu'à présent consistait à chercher si chaque
nom de B figurait dans A. J'ai essayé des fonctions de type OU combiné à
EXACT mais ne m'en sors pas.

Merci de votre aide!

Gilles

2 réponses

Avatar
Techniciel
Bonjour,

Approche possible (mais il y en a plusieurs) :
Ajouter une colonne dans la liste B (par exemple a la fin des données) et
mettre pour chaque ligne de cette colonne =NB.SI(NomsA;NomB) où NomsA
désigne TOUTE LA PLAGE des cellule des noms de la liste A et NomB désigne la
cellule du nom de la ligne en cours dans la liste B.
Par exemple, si les noms sont en 1° colonne et qu'il y en a 50 dans la
feulle ListeA, =NB.SI(ListeA!A2:A51;A2)

Cette formule retourne 0 pour les noms de la liste B qui n'existent pas dans
la liste A.

Ensuite, une option de requête dans Word pour sélectionner que les noms pour
lesquels la valeur est égale à zéro.

Espérant vous avoir aidé.

Cordialement

Pascal (email bidon)
"Gilles" a écrit dans le message de
news:
Bonjour

J'ai deux listes de clients, A et B qui se recoupent partiellement. J'ai
déjà envoyé un mailing à la liste A, et désire en envoyer un autre aux
noms

de la liste B qui ne figurent pas sur la liste A.

L'approche que j'ai suivie jusqu'à présent consistait à chercher si chaque
nom de B figurait dans A. J'ai essayé des fonctions de type OU combiné à
EXACT mais ne m'en sors pas.

Merci de votre aide!

Gilles




Avatar
Michel Gaboly
Bonjour,

Je pense que le plus simple est d'utiliser une colonne intermédiaire en face
des éléments de la liste B permettant d'indiquer si ceux-ci figurent déjà dans
la liste A.

Un tri permet ensuite d'obtenir 2 zones regroupant l'une les éléments de la
liste B présents dans le liste A, l'autre, les éléments absents. Si on ne veut
pas modifier l'ordre de la liste B, il sufit de faire un Copier/Collage spécial
Valeurs sur une nouvelle feuille, sur laquelle on peut éliminer la zone cor-
respondant aux noms déjà présents sur la liste A

Il suffit ensuite de faire le mailing.


La fonction EQUIV() permet de repérer les éléments présents en liste A, en
se basant sur le nom ou un numéro client par exemple. Si le nom est utilisé,
il peut être nécessaire d'affiner ensuite en cas d'homonymes.

EQUIV("Élément recherché";"Plage où rechercher";0)

renvoie un nombre (numéro d'ordre de "Élément recherché" dans la "Plage
où rechercher") si Élément recherché" est trouvé, ou #N/A dans le cas
contraire.

Un test indiquant si le résultat renvoyé par EQUIV() est numérique suffit
à renseigner sur la présence de l'élément cherché.

Avec à partir de la ligne 2, les éléments de la liste B, et en colonne A, l'info
sur laquelle s'effectue la recherche (nom, n° client, ....), il faut entrer dans
une colonne quelconque sur la MÊME ligne, une formule de ce type :

=SI(ESTNUM(EQUIV(A2;ListeA;0));1;"")

ou "ListeA" désigne la plage (une seule colonne), où figurent les données
utilisées pour la recherche dans la liste A (nom, n° client, ....).

Il faut ensuite recopier vers le bas jusqu'à la dernière ligne de la liste B

Dans la colonne contenant les formules, un 1 apparaîtra sur les lignes
correspondant à un client déjà présent dans la liste A.

À ce stade, le problème est quasi résolu.



Bonjour

J'ai deux listes de clients, A et B qui se recoupent partiellement. J'ai
déjà envoyé un mailing à la liste A, et désire en envoyer un autre aux noms
de la liste B qui ne figurent pas sur la liste A.

L'approche que j'ai suivie jusqu'à présent consistait à chercher si chaque
nom de B figurait dans A. J'ai essayé des fonctions de type OU combiné à
EXACT mais ne m'en sors pas.

Merci de votre aide!

Gilles


--
Cordialement,

Michel Gaboly
http://www.gaboly.com