Recherchev vlookup est insuffisant ou je ne sais pas l'utiliser

Bonjour,

J'ai 3 clonnes qui contient des données texte de même type.

C1C2C3C3 not C1 & C2
AYOO
BJPP
CDA
DKK

Mon but est d'afficher les champs dans la 3eme colonne qui ne se trouve dans C1 et C2.

J'ai essayé avec le vlookup, ça ne marche pas si le champ se trouve dans la 2ème colonne comme K.

Je ne sais pas quoi faire, pouvez vous m'aider ?

Merci par avance

Bonjour,

Dans la première ligne il peut y avoir "Y" aussi, non

Bonjour Alex, bonjour le forum,

Essaie avec cette formule en D2 à tirer vers le bas :

=SI(ET(C2<>A2;C2<>B2);C2;"")

ou alors avec OU à la place du ET...

[Edition]

Bonjour Bruno, nos posts se sont croisés.

???

Merci ThauTheme mais ma recherche est sur les deux colonnes en entière C1 et C2 et non par ligne.

En affichant les N/A, le Vlookup(C1, A1:B4,C1,0) peut marcher uniquement pour A1, mais non pour B1 par exemple K.

Re,

Il eut été plus malin de le préciser avant !... Est-ce qu'une proposition VBA peut convenir ?

Oui, l'essentiel est d'avoir un résultat dynamique

Re,

Essaie comme ça :

Sub Macro1()
Dim O As Worksheet 'déclare la variable O (Onglet)
Dim TV As Variant 'déclare la variable TV (Tableau des Valeurs)
Dim I As Integer 'déclare la variable I (Incrément)
Dim R As Range 'déclare la variable R (Recherche)

Set O = Worksheets("Feuil1") 'définit l'onglet O
TV = O.Range("A1").CurrentRegion 'définit le tableau des valeurs TV
For I = 2 To UBound(TV, 1) 'boucle sur toutes les lignes I du tableau des valeurs TV (en partant de la seconde)
    'définit la recherche R (recherche la valeur entière de la donnée ligne I colonne 3 de TV dans les colonnes A et B)
    Set R = O.Columns("A:B").Find(TV(I, 3), , xlValues, xlWhole)
    'si aucune occurrence n'est trouvée, renvoie la donnée ligne I colonne 3 de TV dans la cellule ligne I colonne D
    If R Is Nothing Then O.Cells(I, "D").Value = TV(I, 3)
Next I ' prochaine ligne de la boucle
End Sub

Merci beaucoup, ça marche 👍 et j'ai compris les paramètres et elle marche aussi en modifiant la macro pour ajouter une autre colonne.

Merci beaucoup pour votre aide

Je voulais compléter mon tableau par un else pour ne pas avoir du vide et mettre un X.

If R Is Nothing Then O.Cells(I, "D").Value = TV(I, 3)

Else O.Cells(I, "D").Value = "X"

ça ne marche pas 😕

Je pensais que j'ai pigé

Cordialement,

Ça mâche, sorry il faut juste les mettre dans la même ligne

J'ai une autre question, si j'ai l'ordre suivant des colonnes, j'aimerais utiliser le find

C1C2C3C4C3 vs all
ABYJ
BHDOD
CRBY

Set R = O.Columns("A:B").Find(TV(I, 3), , xlValues, xlWhole)
'si aucune occurrence n'est trouvée, renvoie la donnée ligne I colonne 3 de TV dans la cellule ligne I colonne D
If R Is Nothing Then O.Cells(I, "D").Value = TV(I, 3)
Next I '

Pouvez-vous m'aider pour faire une recherche sur ce tableau ?

Re,

Envoie un fichier, pas une capture d'écran. On n'est pas sur Photochope et j'en ai mare de tout réécrire pour tester...

Désolé et T'embête pas, je l'ai trouvé

Set R = O.Columns("A:B").Find(TV(I, 3), , xlValues, xlWhole)

If R Is Nothing Then O.Cells

Set R = O.Columns("C:C").Find(TV(I, 3), , xlValues, xlWhole)

If R Is Nothing Then O.Cells

Col1

Col2

Col3

Col4


A

A

AP


ZLDWw


PPPD








All fieldsCol1Col2Col3Col4

AXXX


PXXXX

ZX




L
X



D

XX

Ww


X

J'ai une autre question, je souhaiterais à partir du premier tableau déduire le 3ème tableau par vb ou Excel.

J'ai essayé de réutiliser la dernière macro, je ne suis pas arrivé, le but de la première macro est d'avoir les All Fields, ça marche en 2 temps (2eme est de faire de copié collé).

Pourriez vous m'aider ?

3filter.xlsx (8.58 Ko)
Rechercher des sujets similaires à "recherchev vlookup insuffisant sais pas utiliser"