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

Hogyan nyerhetünk ki egyedi értékeket az Excel több oszlopából?

Tegyük fel, hogy több oszlop van több értékkel, néhány érték megismétlődik ugyanabban az oszlopban vagy más oszlopban. Most pedig meg akarja találni azokat az értékeket, amelyek mindkét oszlopban csak egyszer szerepelnek. Vannak gyors trükkök az egyedi értékek kinyeréséhez az Excel több oszlopából?


Kivonat egyedi értékeket tömbképlettel több oszlopból

Itt található egy tömbképlet, amely segít kivonni az egyedi értékeket több oszlopból.

1. Ha feltételezzük, hogy értékei a tartományban vannak A2: C9, kérjük, írja be a következő képletet az E2 cellába:

=INDIRECT(TEXT(MIN(IF(($A$2:$C$9<>"")*(COUNTIF($E$1:E1,$A$2:$C$9)=0),ROW($2:$9)*100+COLUMN($A:$C),7^8)),"R0C00"),)&""

Megjegyzések: A fenti képletben A2: C9 azt a cellatartományt jelöli, amelyikkel ki akarja vonni az egyedi értékeket, E1: E1 az oszlop első cellája, amelybe be akarja helyezni az eredményt, $ 2: $ 9 áll a sorokban a használni kívánt cellákat, és $ A: $ C azt jelzi, hogy az oszlopok tartalmazzák a használni kívánt cellákat. Kérjük, változtassa meg őket sajátjaira.

2. Ezután nyomja meg a gombot Shift + Ctrl + Enter gombokat, majd húzza a kitöltő fogantyút az egyedi értékek kibontásához, amíg üres cellák nem jelennek meg. Lásd a képernyőképet:


Kivonat egyedi értékeket több oszlopból a Pivot Table segítségével

Ha ismeri a kimutató táblázatot, az alábbi lépésekkel könnyedén kivonhatja az egyedi értékeket több oszlopból:

1. Először kérjük, helyezzen be egy új üres oszlopot az adatai bal oldalán, ebben a példában az A oszlopot illesztem be az eredeti adatok mellé.

2. Kattintson az adatok egyik cellájára, majd nyomja meg az gombot Alt + D gombokat, majd nyomja meg a gombot P azonnal nyissa meg a PivotTable és PivotChart varázsló, választ Több konszolidációs tartomány a varázsló 1. lépésében lásd a képernyőképet:

3. Ezután kattintson Következő gombot, ellenőrizze Hozzon létre egyoldalas mezőt számomra opció a varázsló 2. lépésében, lásd a képernyőképet:

4. Kattintson a gombra Következő gombra kattintva válassza ki azt az adattartományt, amely tartalmazza a bal oldali új oszlopot is, majd kattintson a gombra hozzáad gomb az adattartomány hozzáadásához a Minden tartomány lista mező, lásd a képernyőképet:

5. Az adattartomány kiválasztása után kattintson a tovább gombra Következő, a varázsló 3. lépésében válassza ki, hová kívánja helyezni a kimutatás táblázatot.

6. Végül kattintson befejez a varázsló befejezéséhez, és az aktuális munkalapon létrejött egy pivot tábla, majd törölje az összes mező jelölését Válassza ki a jelentéshez hozzáadni kívánt mezőket szakasz, lásd a képernyőképet:

7. Ezután ellenőrizze a mezőt Érték vagy húzza az Értéket a Sorok címkét, akkor a több oszlopból az alábbiak szerint kapja meg az egyedi értékeket:


Kivonat egyedi értékeket több oszlopból VBA kóddal

A következő VBA-kóddal több oszlopból is kivonhatja az egyedi értékeket.

1. Tartsa lenyomva a ALT + F11 gombokat, és ez megnyitja a Microsoft Visual Basic for Applications ablak.

2. Kattints betétlap > Modulok, és illessze be a következő kódot a Modul ablakba.

VBA: Kivonat egyedi értékeket több oszlopból

Sub Uniquedata()
'Updateby Extendoffice
Dim rng As Range
Dim InputRng As Range, OutRng As Range
Set dt = CreateObject("Scripting.Dictionary")
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
For Each rng In InputRng
    If rng.Value <> "" Then
        dt(rng.Value) = ""
    End If
Next
OutRng.Range("A1").Resize(dt.Count) = Application.WorksheetFunction.Transpose(dt.Keys)
End Sub

3. Ezután nyomja meg a gombot F5 a kód futtatásához, és megjelenik egy felszólító mező, amely emlékezteti Önt a használni kívánt adattartomány kiválasztására. Lásd a képernyőképet:

4. Kattintson a gombra OK, megjelenik egy másik prompt doboz, amely lehetővé teszi, hogy kiválasszon egy helyet az eredmény elhelyezéséhez, lásd a képernyőképet:

5. Kattints OK ennek a párbeszédpanelnek a bezárásához és az összes egyedi értéket egyszerre kinyerte.


Kivonat egyedi értékeket egyetlen oszlopból, csodálatos funkcióval

Néha egyetlen oszlopból kell kinyernie az egyedi értékeket, a fenti módszerek nem segítenek, itt egy hasznos eszközt tudok ajánlani-Kutools az Excel számára, Annak Kivonat egyedi értékű cellákat (az első másolatot is tartalmazza) segédprogrammal gyorsan kivonhatja az egyedi értékeket.

Jegyzet:Ennek alkalmazásához Kivonat egyedi értékű cellákat (az első másolatot is tartalmazza), először is le kell töltenie a Kutools az Excel számára, majd gyorsan és egyszerűen alkalmazza a funkciót.

Telepítése után Kutools az Excel számára, kérjük, tegye a következőket:

1. Kattintson egy cellára, ahol ki szeretné adni az eredményt. (Megjegyzések: Ne kattintson egy cellára az első sorban.)

2. Ezután kattintson Kutools > Formula Segítő > Formula Segítő, lásd a képernyőképet:

3. Az Képletek segítője párbeszédpanelen tegye a következőket:

  • választ szöveg lehetőség a Képlet típus legördülő lista;
  • Ezután válasszon Kivonat egyedi értékű cellákat (az első másolatot is tartalmazza) tól Válasszon egy fromulát lista mező;
  • Jobbra Érvek bevitele szakaszban válassza ki az egyedi értékeket kibontani kívánt cellák listáját.

4. Ezután kattintson Ok gombot, és húzza át a kitöltő fogantyút azokra a cellákra, amelyek fel akarják sorolni az összes egyedi értéket, amíg üres cellák nem jelennek meg, lásd a képernyőképet:

Ingyenes letöltés Kutools for Excel most!


Relatívabb cikkek:

  • Számolja meg az egyedi és megkülönböztetett értékek számát egy listából
  • Tételezzük fel, hogy hosszú értéklistád van néhány ismétlődő elemmel, most meg akarod számolni az egyedi értékek számát (az értékeket, amelyek csak egyszer jelennek meg a listában) vagy a különálló értékeket (a lista összes különböző értéke, ez egyedi értékek + 1. duplikált értékek) egy oszlopban, a bal oldali képernyőkép szerint. Ez a cikk arról fog beszélni, hogyan kell kezelni ezt a munkát az Excel programban.
  • Kivonat egyedi kritériumok alapján az Excelben
  • Tételezzük fel, hogy Önnek a következő adattartománya van, amely csak az „A” oszlop egyedi kritériumai alapján szeretné felsorolni a „B” oszlop egyedi neveit, hogy az eredményt az alábbi képernyőképen láthatja. Hogyan tudná gyorsan és egyszerűen kezelni ezt a feladatot az Excel programban?
  • Összegezze az egyedi értékeket az Excel kritériumai alapján
  • Például van egy adattartományom, amely a Név és a Sorrend oszlopokat tartalmazza, hogy a Rendelés oszlopban csak az egyedi értékeket összegezzem a Név oszlop alapján, a következő képernyőkép szerint. Hogyan lehet ezt a feladatot gyorsan és egyszerűen megoldani az Excelben?

A legjobb irodai termelékenységi eszközök

A Kutools for Excel megoldja a legtöbb problémát, és 80% -kal növeli a termelékenységet

  • újrafelhasználás: Gyorsan helyezze be összetett képletek, diagramok és bármi, amit korábban használt; Cellák titkosítása jelszóval; Levelezőlista létrehozása és e-maileket küldeni ...
  • 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 az adatok elvesztése nélkül; Osztott cellák tartalma; Kombinálja a duplikált sorokat / oszlopokat... 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 ...
  • 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...
  • Több mint 300 hatékony funkció. Támogatja az Office / Excel 2007-2021 és 365 verziókat. Minden nyelvet támogat. Könnyű üzembe helyezés vállalatában vagy szervezetében. Teljes funkciók 30 napos ingyenes próbaverzió. 60 napos pénzvisszafizetési garancia.
kte lap 201905

Az Office fül a füles felületet hozza az Office-ba, és sokkal könnyebbé teszi a munkáját

  • 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 (31)
Az 5-t az 5-ből kiértékelte · 1 értékelés
A weboldal moderátora ezt a megjegyzést minimalizálta
Is this formula complete? =INDIRECT(TEXT(MIN(IF(($A$2:$C$9"")*(COUNTIF($E$1:E1,$A$2:$C$9)=0),ROW($2:$9)*100+COLUMN($A:$C),7^8)),"R0C00"),)&"",
A weboldal moderátora ezt a megjegyzést minimalizálta
Ez még nincs megoldva :sad:
A weboldal moderátora ezt a megjegyzést minimalizálta
micsoda időpocsékolás..... képlet NEM működik
A weboldal moderátora ezt a megjegyzést minimalizálta
Köszönöm!!! Órákat töltöttem azzal, hogy ezt megtegyem, és kitaláljam, mi történt a Pivot varázslóval (egy másik cikk).
A weboldal moderátora ezt a megjegyzést minimalizálta
Az Ön VBA-kódját használom, de nem akarom, hogy a doboz felbukkanjon. Ehelyett pontosan meg akarom határozni, hogy milyen cellatartományt használjunk minden alkalommal, és pontosan melyik dobozba helyezzük a kimenetet. A bemeneti tartomány és a kimenet két különböző lapon lenne. Hogyan frissíthetem a VBA-t ehhez? Köszönöm!!
A weboldal moderátora ezt a megjegyzést minimalizálta
Hé! Tudja valaki, hogy ez a képlet miért vezet hibához a 87. sor után? Például tökéletesen működik, majd egy bizonyos ponton minden sorban hibát ad vissza.. ami a legrosszabb! Mert olyan közel vagyok ahhoz, amire itt szükségem van...
A weboldal moderátora ezt a megjegyzést minimalizálta
=INDIRECT(TEXT(MIN(IF(($A$2:$C$9"")*(COUNTIF($E$1:E1,$A$2:$C$9)=0),ROW($2:$9)*100+COLUMN($A:$C),7^8)),"R0C00"),)&"" It doesn't work
A weboldal moderátora ezt a megjegyzést minimalizálta
szia, egyedi cellákat szeretnék kivonni az első oszlopból, amikor összehasonlítom egy másik oszloppal (három egyenlőtlen oszlopom van), hogyan tudom ezt megtenni?
A weboldal moderátora ezt a megjegyzést minimalizálta
szia, három egyenlőtlen oszlopom van, és az első oszlop egyedi celláit szeretném kivonni. hogy tudom megcsinálni?? előre is köszönöm
A weboldal moderátora ezt a megjegyzést minimalizálta
Imádom

Kivonat egyedi értékeket több oszlopból kimutatással
A weboldal moderátora ezt a megjegyzést minimalizálta
Kérem, küldje el a megfelelő képletet... a VBA függvény jól működik.
Csak a projektemhez inkább a megfelelő képletet használom.


Kösz
A weboldal moderátora ezt a megjegyzést minimalizálta
Tudja valaki, hogy a kimenetet hogyan lehet több sorba tenni, de egy sorba nem? (jelenleg egysoros eredményt ér el a workheetfunction.transpose, de azt szeretném elérni (eredményként), hogy 3 oszlopra való kijelölésnél a visszaadott eredmény is 3 oszlop legyen, egy helyett
A weboldal moderátora ezt a megjegyzést minimalizálta
Ez a tömbképlet HELYES. Adatok az A-tól C-ig, az első eredmény képlete a D2 cellában... Ez különbözik a többi tömbképlettől, hogy a későbbi képletet másol le, és Ctrl+Shift+Enter all formula. Ezt a tömbképletet azonban a Ctrl+Shift+Enter billentyűkombinációval kell végrehajtani az első cellában, és le kell másolni.
A weboldal moderátora ezt a megjegyzést minimalizálta
Sok gracia por la macro!!! me fue muy util
A weboldal moderátora ezt a megjegyzést minimalizálta
igazítottam a lapomat, de csak az első értéket adom vissza a meghatározott tömbben... mit hiányolok?
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Cody,
A fenti képlet jól működik a munkalapomon, tudnál itt egy képernyőképet adni az adatproblémáról?
Köszönöm!
A weboldal moderátora ezt a megjegyzést minimalizálta
A képletváltozattal kapcsolatban el tudnád fejteni részletesebben, hogy mit csinál ez a rész? *100+COLUMN($A:$C),7^8)),"R0C00") Konkrétan mik azok * 100, 7 ^ 8és "R0C000" csinálsz? Minden mást értek, de nem értem, hogy ezek mire valók.
A weboldal moderátora ezt a megjegyzést minimalizálta
Kicsit késő a válaszom, de...
ROW($2:$9)*100 – ez a sorszám *100 szorzata, tehát ha az 5. sorban van, akkor most 500
OSZLOP($A:$C) - ez hozzáadódik a sor*100 számhoz, tehát ha ez az 5. sor 2. oszlop, akkor a szám 502.
7^8)), - ez (szerintem) azt jelenti, hogy a korábbi min utasításnak max értéke legyen.
"R0C00") - ez a szám alapján formázza a szöveget. A példában 502 volt, így ez R5C02-t ad (5. sor, 02. oszlop).

Ha sok oszlopa van, de nincs sok sora, akkor módosíthatja a következőre: ROW($2:$9)*1000+OSZLOP($A:$C),7^8)),"R0C000")
A weboldal moderátora ezt a megjegyzést minimalizálta
Köszönöm a kódot. Az oldal VBA kódját használom. Van mód arra, hogy az egyedi értékek kinyerése után rendezési kódot adjunk hozzá, így az automatikusan rendezi?
A weboldal moderátora ezt a megjegyzést minimalizálta
létrehozhatunk uniqdata függvényt makró helyett?
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia, İlhan! Ha egy felhasználó által definiált függvényt szeretne létrehozni a probléma megoldására, akkor az alábbi kód segíthet: A kód beillesztése után válassza ki a cellák listáját, ahová az eredményeket el szeretné helyezni. Ezután írja be ezt a képletet:=Egyediek (A1:C4)  a képletsorban.Nyomja meg Ctrl + Shift + Enter kulcsokat együtt. 


Function Uniques(ByVal inputRange As Range)
Dim inputArray As Variant
Dim myColl As New Collection
Dim xVal As Variant
Dim outArray() As Variant
On Error Resume Next
With inputRange
inputArray = Application.Intersect(.Cells, .Parent.UsedRange).Value
End With
On Error GoTo 0
On Error Resume Next
For Each xVal In inputArray
myColl.*** Item:=xVal, Key:=(CStr(xVal) & TypeName(xVal))
Next xVal
myColl.Remove "String"
On Error GoTo 0
ReDim outArray(1 To Application.Max(myColl.Count, Application.Caller.Cells.Count))
For xVal = 1 To UBound(outArray)
outArray(xVal) = vbNullString
Next xVal
For xVal = 1 To Application.Min(myColl.Count, Application.Caller.Cells.Count)
outArray(xVal) = myColl(xVal)
Next xVal
If Application.Caller.Columns.Count = 1 Then
Uniques = Application.Transpose(outArray)
Else
Uniques = outArray
End If
End Function
A weboldal moderátora ezt a megjegyzést minimalizálta
Czy to żart?
A weboldal moderátora ezt a megjegyzést minimalizálta
A tetején lévő tömbképlet nagyszerűen működik, ha ugyanazon a munkalapon lévő adatokkal használjuk, de amikor megpróbálom használni, hogy ugyanazokra a pontos adatokra hivatkozzam egy másik lapról, a képlet semmit sem ad vissza. Képtelen vagyok rájönni, hogy miért. Van-e olyan korlátozás a tömbfüggvényekkel kapcsolatban, amelyek megakadályozzák, hogy egy másik lapon hivatkozzon tartományokra?

Köszönet minden meglátásért.
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Erin,

Örülök, hogy segíthettem. Ebben a képletben az INDIRECT függvény használata bonyolultabb, ha más munkalapokon lévő adatokra hivatkozik. Nem ajánlott ezt a funkciót használni, amikor tartományokra hivatkozik különböző munkalapokon.

Például: Most az adatok a Munkalap 1-ben vannak, szeretnék hivatkozni a Munkalap 2 C1 cellájának tartalmára a 2. munkalapon. Először a 2. munkalap bármely két cellájába, például D1-be és D2-be írja be a Munkalap1-et és a C2-t. Ezen a ponton írja be a képletet a 2. munkalap üres cellájába:
=INDIRECT("'"&D1&"'!"&D2), akkor a Sheet2 C1 cellájának tartalma visszaadható.

Amint látja, ez sokkal bonyolultabbá teszi a dolgokat. Remélem, a magyarázatom segíthet. Legyen szép napod.

Tisztelettel,
Mandy
A weboldal moderátora ezt a megjegyzést minimalizálta
Üdvözlöm uram! A VBA csodákat művelt, ezt nagyon köszönöm! Érdeklődnék, hogy ha megváltoztatom az eredeti adatokat, lehetséges-e automatikusan frissíteni az oszlopot az egyedi értékekkel?
Az 5-t az 5-ből kiértékelte
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia Ioannis!

Örülök, hogy segíthettem. Az eredeti adatok módosítása után a VBA nem tudja automatikusan frissíteni az eredményt. A legegyszerűbb módja pedig az, hogy lenyomom a Ctrl + Alt + F9 billentyűkombinációt az összes megnyitott munkafüzetben lévő munkalapok eredményének frissítéséhez. Legyen szép napod.

Tisztelettel,
Mandy
A weboldal moderátora ezt a megjegyzést minimalizálta
Köszönöm ezt a nagyszerű cikket.

Azoknak, akik a tömbképlet nem angol Excelben különös figyelmet kell fordítani a szöveges formátum karakterláncára: a példádban: "R0C00".
Németül ez „Z0S00”-nak felel meg. Az "S" azonban egy speciális karakter, amely az időformázás másodperceire utal. Ezt a karaktert meg kell szabadítani, ezért a német Excel megfelelő formátumú karakterlánca a „Z0\S00”.

Remélem ez segít valakinek a jövőben :-)
Még senki sem írt megjegyzést
Több ingatlan

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