1
votes

Existe-t-il un moyen de RECHERCHEV avec la cellule de plage contenue dans la valeur de la cellule

J'essaye de travailler ceci (sans macro), bien sûr que je ne travaille pas sur Apples et Peer:

  • Exemple de texte brut: https://pastebin.com/3L8rzxCa

  • Extrait de ma feuille Excel: https://imgur.com/a/kkVvqZ3

 entrez la description de l'image ici

Je veux vérifier si une cellule (qui contient une liste de produits) contient une valeur d'une gamme (inventaire) ET est présente en stock.

J'ai essayé:

  • RECHERCHEV avec un caractère générique (ne fonctionne pas car les fruits en stock doivent être contenus dans la liste du panier, et non l'inverse)

  • Countif: fonctionne pour vérifier si la cellule contient une valeur individuelle de la plage, mais ne peut pas vérifier si "en stock"

Peut-être une formule CSE que je ne peux pas créer?

J'espère que c'est compréhensible ... Merci pour votre aide :)


0 commentaires

3 Réponses :


0
votes

Donc, en vous basant sur un exemple simple, vous pouvez essayer quelque chose comme:

=IF(AND(MATCH(E4,$A$3:$A$6,0)>0,MATCH(E4,$A$12:$A$15,0)>0),INDEX($B$12:$B$15,MATCH(E4,$A$12:$A$15,0)),"")

entrez la description de l'image ici


0 commentaires

0
votes

Assez difficile, de meilleures façons possibles de faire cela. Mais voici un moyen:

 entrez la description de l'image ici

Formule dans C8

{=IF(SUMPRODUCT(--((TRANSPOSE(IF(OFFSET($A$2:$A$5,0,1)="Yes",$A$2:$A$5,"")))=TRIM(MID(SUBSTITUTE(B8,",",REPT(" ",99)),(ROW(OFFSET($C$1,,,LEN(B8)-LEN(SUBSTITUTE(B8,",",""))+1))-1)*99+((ROW(OFFSET($C$1,,,LEN(B8)-LEN(SUBSTITUTE(B8,",",""))+1)))=1),99))))>0,"Yes","No")}

Notez que c'est une formule matricielle et doit être confirmée via CtrlShiftEnter


0 commentaires

3
votes

Vous pouvez utiliser les éléments suivants:

=IF(SUMPRODUCT(ISNUMBER(FIND($A$2:$A$5,B8))*($B$2:$B$5="Yes"))=SUMPRODUCT(--ISNUMBER(FIND($A$2:$A$5,B8))),"Yes","No")

entrez la description de l'image ici

Ce qui précède suppose que les fruits de la liste fournie sont tous présents dans la liste des fruits en stock.

Ce qui précède suppose également qu'un Oui est attendu tant qu'au moins un fruit est en stock hors de la liste de fruits fournie .

Si un Non est attendu si l'un des fruits de la liste fournie est manquant, vous pouvez utiliser ce qui suit:

=IF(SUMPRODUCT(ISNUMBER(FIND($A$2:$A$5,B8))*($B$2:$B$5="Yes")),"Yes","No")


3 commentaires

Nice @Jerry, beaucoup plus simple que le mien. +1 (même si je me demande, que se passe-t-il si je change de pomme, de poire et de tarte aux pommes, poire.


@JvdV Oui, si un fruit peut être une sous-chaîne d'un autre fruit, alors nous aurons des problèmes ^^;


Travailler :) Merci beaucoup pour la solution propre! Cela me sauve la vie.