Note: The other languages of the website are Google-translated. Back to English

Hogyan adhat vissza több egyező értéket egy vagy több feltétel alapján az Excelben?

Normál esetben a VLOOKUP funkció használatával a legtöbbünk számára könnyű megkeresni egy adott értéket, és visszaadni az egyező elemet. De próbált-e már egyszerre több egyező értéket visszaadni egy vagy több kritérium alapján, az alábbi képernyőképen? Ebben a cikkben bemutatok néhány képletet ennek az összetett feladatnak az Excelben történő megoldására.

Több egyező értéket adhat vissza egy vagy több feltétel alapján tömbképletekkel


Több egyező értéket adhat vissza egy vagy több feltétel alapján tömbképletekkel

Például ki szeretnék vonni minden olyan nevet, amelynek életkora 28 és Egyesült Államokból származik, kérjük, alkalmazza a következő képletet:

1. Másolja vagy írja be az alábbi képletet egy üres cellába, ahol meg szeretné találni az eredményt:

=INDEX($B$2:$B$11, SMALL(IF(COUNTIF($F$2, $C$2:$C$11)*COUNTIF($G$2, $D$2:$D$11), ROW($A$2:$D$11)-MIN(ROW($A$2:$D$11))+1), ROW(A1)), COLUMN(A1))

Megjegyzések: A fenti képletben B2: B11 az az oszlop, ahonnan az egyező értéket visszaadják; F2, C2: C11 az első feltétel és az első feltételt tartalmazó oszlopadatok; G2, D2: D11 a második feltétel és az oszlopadatok, amelyek tartalmazzák ezt a feltételt, kérjük, változtassa meg őket az Ön igényeinek megfelelően.

2. Ezután nyomja meg a gombot Ctrl + Shift + Enter gombokat az első egyezés eredményének megszerzéséhez, majd válassza ki az első képlet cellát, és húzza lefelé a kitöltő fogantyút a cellákig, amíg meg nem jelenik a hibaérték.

tippek: Ha csak egy feltétel alapján kell visszaadnia az összes megfelelő értéket, kérjük, alkalmazza az alábbi tömbképletet:

=IFERROR(INDEX($B$2:$B$11, SMALL(IF($F$2=$D$2:$D$11, ROW($D$2:$D$11)-ROW($D$2)+1), ROW(1:1))),"" )


Relatívabb cikkek:

  • Több keresési értéket adjon vissza egy vesszővel elválasztott cellában
  • Az Excelben alkalmazhatjuk a VLOOKUP függvényt az első egyező érték visszaadására egy táblázat celláiból, de néha ki kell bontanunk az összes egyező értéket, majd egy elválasztóval, például vesszővel, kötőjelgel stb. Kell elválasztani egyetlen egységbe. cella a következő képernyőképen látható. Hogyan kaphatunk és adhatunk vissza több keresési értéket egy vesszővel elválasztott cellában az Excelben?
  • Vlookup és egyszerre több egyező értéket ad vissza a Google Sheet-ben
  • A Google lap normál Vlookup funkciója segíthet megtalálni és visszaküldeni az első megfelelő értéket egy adott adat alapján. De néha előfordulhat, hogy vlookup-ot kell adnia, és vissza kell adnia az összes megfelelő értéket, ahogy a következő képernyőkép mutatja. Van valami jó és egyszerű módja ennek a feladatnak a megoldására a Google munkalapon?
  • Vlookup és több értéket ad vissza a legördülő listából
  • Az Excelben hogyan lehetne vlookup-ot létrehozni és több megfelelő értéket visszaadni egy legördülő listából, ami azt jelenti, hogy ha egy elemet választ a legördülő listából, akkor az összes relatív értéke egyszerre jelenik meg, az alábbi képernyőkép szerint. Ez a cikk lépésről lépésre bemutatom a megoldást.
  • Vlookup és több érték visszaadása függőlegesen az Excelben
  • Normál esetben a Vlookup függvény használatával megkapja az első megfelelő értéket, de néha az összes megfelelő rekordot vissza szeretné adni egy adott kritérium alapján. Ebben a cikkben arról fogok beszélni, hogy hogyan lehet az összes egyező értéket függőlegesen, vízszintesen vagy egyetlen cellába visszaadni.

 


  • Szuper Formula Bár (könnyedén szerkeszthet több szöveget és képletet); Olvasás elrendezés (könnyen olvasható és szerkeszthető nagyszámú cella); Beillesztés a Szűrt tartományba...
  • Cellák / sorok / oszlopok egyesítése és az adatok megőrzése; Osztott cellák tartalma; Kombinálja az ismétlődő sorokat és az Összeg / Átlagot... megakadályozza az ismétlődő cellákat; Hasonlítsa össze a tartományokat...
  • Válassza a Másolat vagy az Egyedi lehetőséget Sorok; Válassza az Üres sorok lehetőséget (az összes cella üres); Super Find és Fuzzy Find sok munkafüzetben; Véletlenszerű kiválasztás ...
  • Pontos másolás Több cella a képletreferencia megváltoztatása nélkül; Automatikus referenciák létrehozása több lapra; Helyezze be a golyókat, Jelölőnégyzetek és még sok más ...
  • Kedvenc és gyorsan beszúrható képletek, Tartományok, diagramok és képek; Cellák titkosítása jelszóval; Levelezőlista létrehozása és e-maileket küldeni ...
  • Kivonat szöveg, Szöveg hozzáadása, Eltávolítás pozíció szerint, Hely eltávolítása; Hozz létre és nyomtasson személyhívó részösszegeket; Konvertálás a cellatartalom és a megjegyzések között...
  • Szuper szűrő (mentse el és alkalmazza a szűrősémákat más lapokra); Haladó rendezés hónap / hét / nap, gyakoriság és egyebek szerint; Speciális szűrő félkövér, dőlt betűvel ...
  • Kombinálja a munkafüzeteket és a munkalapokat; Táblázatok egyesítése kulcsoszlopok alapján; Az adatok felosztása több lapra; Kötegelt konvertálás xls, xlsx és PDF...
  • Pivot tábla csoportosítás hét száma, a hét napja és egyebek ... Mutassa a Feloldott, Zárt cellákat különböző színekkel; Jelölje ki azokat a cellákat, amelyeknek képlete / neve van...
kte lap 201905
  • Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
  • Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
  • 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!
officetab alja

 

A megjegyzések rendezése szerint
Hozzászólások (25)
Még nincs értékelés. Legyen Ön az első, aki értékel!
A weboldal moderátora ezt a megjegyzést minimalizálta
Pontosan ugyanezt a formulát próbáltam ki; 100%-ban másolva. Az egyetlen dolog, amit megváltoztattam, az az adatok egyeztetése és visszaadása. Amikor ezt a képletet használom, az Excel azt írja ki: "Túl sok argumentumot adott meg ehhez a függvényhez).=INDEX('2020 kötetjelentés'!$B$3:$B$100,SMALL(IF(COUNTIF($A$1,'2020 Volume) Jelentés'!$A$3:$A$100)*COUNTIF($A$3,'2020-as kötetjelentés'!$D$3:$100$),ROW('2020-as kötetjelentés'!$A$3:$100$G)- MIN(ROW('2020 Volume Report'!$A$3:$G$100))+1,"0"),ROW(A1),OSZLOP(A1))
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia! Megadnád az adataidat és a képlethibádat képernyőképként?
A weboldal moderátora ezt a megjegyzést minimalizálta
Hello, Hogyan használhatom vízszintes állapothoz.
A weboldal moderátora ezt a megjegyzést minimalizálta
Mi a "0" a +1 után a képletben? Ez nincs a példában.
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia, én is kipróbáltam ugyanezt a formulát. eredményt kapok, de az egyéni keresőmotor megadásakor nem ad több választ
A weboldal moderátora ezt a megjegyzést minimalizálta

A weboldal moderátora ezt a megjegyzést minimalizálta
Az egy vagy több feltételen alapuló többszörös egyező értékek visszaadása tömbképletekkel kapcsolatban: Miért van az, hogy ha az adatok az A1-től kezdődően kívül bárhol máshol vannak, akkor az nem működik, bár frissítem a képlet összes cellahivatkozását?
A weboldal moderátora ezt a megjegyzést minimalizálta
Az első példában milyen módosításra lenne szükség a képletben ahhoz, hogy mindenki visszakerüljön, aki 28 évesnél fiatalabb?
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia,

Azon tűnődtem, hogy egyáltalán lehetséges-e megadni egy 2. kritériumot, de az 1. kritériummal azonos tartományból,

Például a fenti használt példával Amerikából és Franciaországból származó emberek nevét is szeretném keresni, így az F3 cellában Franciaország szerepelne, Scarlett és Andrew szintén a G oszlopban található listában.

Köszönöm előre is a segítséget.
A weboldal moderátora ezt a megjegyzést minimalizálta
Hello Nick,

Örülök, hogy segíthettem. Ha Amerikából és Franciaországból is meg akarja szerezni az emberek nevét, azt tanácsolom, hogy kétszer használja a képletünket az eredmény eléréséhez. Nézze meg a képernyőképet, az F2-ben és a G2-ben az "Egyesült Államok" és a "Franciaország" értékei. Képlet alkalmazása =IFERROR(INDEX($B$2:$B$11, SMALL(IF($F$2=$D$2:$D$11, ROW($D$2:$D$11)-ROW($D$2)+1 ), ROW(1:1))),"" ), hogy megkapja az eredményeket Amerikára. És alkalmazza a képletet =IFERROR(INDEX($B$2:$B$11, SMALL(IF($G$2=$D$2:$D$11, ROW($D$2:$D$11)-ROW($D$2)+ 1), ROW(1:1))),"" ), hogy megkapja a franciaországi eredményeket. Ez egyszerű. Kérjük, próbálja meg.

Tisztelettel,
Mandy
A weboldal moderátora ezt a megjegyzést minimalizálta
Amikor a második képletet használom és lehúzom, semmi sem jelenik meg. A képlet eredménye (fx) azt mondja, hogy vissza kell adnia valamit, de üres. Hogyan korrigálhatom ezt?
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Alysia!

Örülök, hogy segíthettem. Kipróbáltam a cikk második képletét, és lehúztam a képletet, a többi eredményt visszaküldtem. Szerintem két oka lehet a problémádnak. Először talán elfelejtette megnyomni a Ctrl + Shift + Enter billentyűket a képlet megadásához. Másodszor, az egyező eredmény csak egy, tehát más eredmény nem kerül visszaadásra. Kérem, ellenőrizze.

Tisztelettel,
Mandy
A weboldal moderátora ezt a megjegyzést minimalizálta
Helló,
Próbáltam a képletet használni, és vagy 0 értéket generál, vagy a csatolt képet
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Milku
A képernyőképen a MAC verziójú WPS szoftver látható, ezért nem vagyok biztos benne, hogy elérhető-e a képletünk.
Feltöltöttem ide egy Excel fájlt, meg lehet próbálni, hogy az Ön környezetében megfelelően tud-e számolni.
Köszönöm!
A weboldal moderátora ezt a megjegyzést minimalizálta
Helló,
mire lenne szükség az első képlet bővítéséhez a következő esetben:
Egyes azonosítók üresek (pl. az A5 cella üres), és szeretnék egy további feltételt, amely csak akkor adja ki a sorokat, ha az azonosítók nem üresek. (Tehát a kimenet James és Abdul legyen.
Köszönjük!
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Jo,
A probléma megoldásához használja az alábbi képletet:
=INDEX($B$2:$B$11, SMALL(IF(COUNTIF($F$2, $C$2:$C$11)*COUNTIF($G$2, $D$2:$D$11)*($A$2:$A$11<>0), ROW($A$2:$D$11)-MIN(ROW($A$2:$D$11))+1), ROW(A1)), COLUMN(A1))

Kérlek írj, remélem tud segíteni!
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia,

ha a H1 cellába beírom a "Név" szót, és azt szeretném összekapcsolni a képlettel, hogyan működne?
Ezután a H1 cellába írhatnám az "ID"-et, és automatikusan a következőt kapnám: AA1004; DD1009; PP1023 (az első képlethez)

Előre is köszönöm!
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Marie
Elnézést, nem értem az első problémád lényegét. Meg tudnád világosabban és részletesebben elmagyarázni a problémádat? Vagy beszúrhat ide egy képernyőképet a probléma leírásához.
Ami a második kérdést illeti, csak a cellahivatkozást kell módosítania a következőképpen:
=INDEX($A$2:$A$11, SMALL(IF(COUNTIF($F$2, $C$2:$C$11)*COUNTIF($G$2, $D$2:$D$11), ROW($A$2:$D$11)-MIN(ROW($A$2:$D$11))+1), ROW(A1)), COLUMN(A1))

Ne felejtse el megnyomni Ctrl + Shift + Enter kulcsokat együtt.
Próbáld ki, remélem tud segíteni!
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia, köszönöm a formulát. Működött a "rögzített" értékek / szöveg kritériumként. Azonban az egyik feltétel, amelyet használni próbálok, egy feltétel (<>0 értékek), de nem működik a leírt képlet szerint. Srácok, tudjátok, mit kell megváltoztatnom, hogy a képletet hozzáigazítsam ahhoz, hogy egy feltétel legyen az egyik kritérium?

Legjobb,

János
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Marcus
A probléma megoldásához tekintse meg ezt a cikket:
https://www.extendoffice.com/documents/excel/6393-excel-vlookup-function.html#b3-2
Van néhány részletes magyarázat erre a feladatra. Csak módosítania kell a kritériumokat a sajátjára.
Köszönöm!
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia,

Először is köszönöm a megosztásokat!

Tudna-e megoldást adni az alábbi esetre:

3 oszlopom van (A: Referencia információkat tartalmaz, B: Keresendő információkat tartalmaz, C: keresési eredmény)

A kép URL-je lent található

https://ibb.co/VHCd09K

A oszlop--------------------------B oszlop-------------C oszlop
Fájl neve ------------------------- Név ---------------- Fájlnév, dokumentum neve, Elem neve, neve
Módosított elem------------------------------------Módosított elem, elem neve, elemazonosító
Oszlop helye
Dokumentum neve
Elem neve
Név
Kategória

Lejtő
Elemazonosító

Meg kell keresnem az A oszlopban a B2 (Név) vagy a B3 (Elem) cellával való részleges egyezést, és az eredményt egy cellában kapom meg,

Köszönöm, Behzad
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Behzad
Talán az alábbi felhasználói függvény segíthet.
Public Function ConcatPartLookUp(rngInput As Range, rngSource As Range, Optional strDelimiter As String, Optional blCaseSensitive)
Dim rng As Range
If strDelimiter = "" Then strDelimiter = ","
If IsMissing(blCaseSensitive) Then
    blCaseSensitive = False
Else
    blCaseSensitive = True
End If
For Each rng In rngSource
    If blCaseSensitive Then
        If InStr(1, rng.Value, rngInput.Value, vbBinaryCompare) > 0 Then ConcatPartLookUp = ConcatPartLookUp & strDelimiter & rng.Value
    Else
        If InStr(1, rng.Value, rngInput.Value, vbTextCompare) > 0 Then ConcatPartLookUp = ConcatPartLookUp & strDelimiter & rng.Value
    End If
Next
If Len(ConcatPartLookUp) > 0 Then ConcatPartLookUp = Mid(ConcatPartLookUp, 2, Len(ConcatPartLookUp))
End Function


A kód másolása és beillesztése után használja ezt a képletet:=ConcatPartLookUp(B2,$A$2:$A$8) hogy elérje a kívánt eredményt.
Kérem, próbálja ki, remélem tud segíteni!
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia,

Köszönjük, hogy közzétette ezeket a példákat.
Próbálom ezt megvalósítani a saját lapomon, de nem megy (talán azért, mert az excel európai verzióját használom)?

Meg akarom kérni azoknak a napoknak a dátumát, amikor műszakom volt, vagy amikor „néhány” (>0) órát dolgoztam egy ügyfélnél.

Tehát az I3-ban a név, a J3-ban pedig a hónap szerepel. K3 és L3 a műszakok (1-et dolgoznak) és az órák (nem tudom, hogyan kell ezt beállítani, nullánál nagyobbnak kell lennie)

Várható eredményeim a következők:
Váltások: I7 és I8
óra: J7

Tehát több mint 0 órát dolgoztam a "2. személynél" októberben 3-10-2022-án
2-10-10-én és 2022-28-10-án műszak volt a 2022. személy számára

Amikor hozzáadom a '=INDEX($B$2:$B$11, SMALL(IF(COUNTIF($F$2, $C$2:$C$11)*COUNTIF($G$2, $D$2:$D$11), ROW) ($A$2:$D$11)-MIN(ROW($A$2:$D$11)))+1), ROW(A1)), COLUMN(A1))" excel lapomban, nem teszi lehetővé a vesszőt a képlet különböző részei közé.
Tehát módosítanom kell őket ";"-re.
De amikor megpróbálom, mindig azt írja ki: "#NAME?"

Szóval valaki tud ebben segíteni?

Üdvözlettel,

Bas
[img]https://drive.google.com/file/d/1iIPQKuj_PNhqWyWlwJ4IQTqGNEd6B9Hw/view?usp=share_link[/img]
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia, ha ismétlődő értékek vannak (pl. két adams), hogyan tudom megbizonyosodni arról, hogy csak 1-et ad vissza, és nem 2-t?
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia, Bobby,
Csak egyedi egyező értékek kinyeréséhez alkalmazza az alábbi képletet:
A képlet beillesztése után nyomja meg a gombot Ctrl + Shift + Enter gombokat együtt a helyes eredmény eléréséhez.
=IFERROR(INDEX($B$2:$B$5, MATCH(0, COUNTIF(H1:$H$1, $B$2:$B$5)+IF($D$2:$D$5<>$G$2, 1) , 0)+IF($C$2:$C$5<>$F$2, 1, 0), 0)), "")

Kérem, próbálja ki, remélem tud segíteni!
Még senki sem írt megjegyzést

Kövess minket

Copyright © 2009 - www.extendoffice.com. | Minden jog fenntartva. Powered by ExtendOffice. | Oldaltérkép
A Microsoft és az Office logó a Microsoft Corporation védjegyei vagy bejegyzett védjegyei az Egyesült Államokban és / vagy más országokban.
Sectigo SSL védi