Excel-formule: cel bevat enkele woorden maar andere niet -

Generieke formule

(=AND(COUNT(SEARCH(inc,A1))>0,COUNT(SEARCH(exc,A1))=0))

Samenvatting

Om een ​​cel te testen om te zien of deze bepaalde woorden bevat, maar andere niet, kunt u een matrixformule gebruiken op basis van de functies COUNT en SEARCH, verpakt in de functie EN.

In het getoonde voorbeeld is de formule in C5:

(=AND(COUNT(SEARCH(inc,B5))>0,COUNT(SEARCH(exc,B5))=0))

Deze formule retourneert WAAR als B5 een van de woorden in het benoemde bereik inc bevat en geen van de woorden in het benoemde bereik exc .

Dit is een matrixformule en moet worden ingevoerd met Control + Shift + Enter.

Uitleg

Deze formule is afhankelijk van de EN-functie om twee voorwaarden tegelijkertijd te testen:

  1. Het aantal woorden uit het benoemde bereik inc is> 0
  2. Het aantal woorden uit het benoemde bereik exc is = 0

Als beide voorwaarden WAAR zijn, retourneert de formule WAAR. Als een van beide voorwaarden FALSE is, retourneert de formule FALSE.

De test voor meerdere woorden wordt gedaan met behulp van de SEARCH-functie met hulp van COUNT.

Als SEARCH meer dan één item ontvangt om naar te zoeken, retourneert het een reeks resultaten, één per item. Als een overeenkomst is gevonden, geeft SEARCH de positie van de overeenkomst terug. Als er geen overeenkomst wordt gevonden, retourneert SEARCH de fout #VALUE. De COUNT-functie haalt een aantal getallen in de array op die wordt geretourneerd door SEARCH. COUNT negeert standaard fouten.

In het getoonde voorbeeld wordt de formule in stappen als deze opgelost

=AND(COUNT((1;11;#VALUE!))>0,COUNT((#VALUE!;#VALUE!))=0) =AND(2>0,0=0) =AND(TRUE,TRUE) =TRUE

Met hardgecodeerde waarden

Het is niet vereist dat u een bereik gebruikt voor uw lijst met dingen. Als u slechts naar een klein aantal dingen zoekt, kunt u een lijst in matrixindeling gebruiken, die een matrixconstante wordt genoemd. Als u bijvoorbeeld wilt testen op rood, blauw of groen, maar roze en oranje wilt uitsluiten, kunt u het volgende gebruiken:

=AND(COUNT(SEARCH(("red","blue","green"),B5))>0,COUNT(SEARCH(("orange","pink"),B5))=0)

Voor deze versie is de syntaxis control + shift + enter matrixformule niet vereist.

Interessante artikelen...