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

Hogyan lehet eltávolítani a sorokat az Excel cellaértéke alapján?

Több sor gyors törléséhez vagy eltávolításához az Excel cellasejtje alapján előfordulhat, hogy először ki kell választania azokat a teljes sorokat, amelyek tartalmazzák a cellák értékét, majd el kell távolítani őket. Úgy tűnik, hogy nincs gyors mód a sorok törlésére a cellák értéke alapján, de VBA kód használatával. Íme néhány gyors trükk a segítségedre.


Távolítsa el a sorokat a cellaérték alapján a Keresés és csere funkcióval

Az Excel alkalmazásban alkalmazhatja a hatékony Keresés és csere funkciót a sorok egyszerű eltávolításához egy adott cellaérték alapján. Kérjük, tegye a következőket:

1. Válassza ki azt a tartományt, ahonnan bizonyos cellák értéke alapján eltávolítja a sorokat, majd a és megnyomásával nyissa meg a Keresés és csere párbeszédpanelt Ctrl + F gombokat egyszerre.

2. A Keresés és csere párbeszédpanelen írja be a cella bizonyos értékét (esetünkben a meleg) ba,-be Find what mezőbe, és kattintson a Find All gomb. Lásd az alábbi első képernyőképet:

3. Jelölje ki az összes keresési eredményt a Keresés és csere párbeszédpanel alján, majd zárja be ezt a párbeszédpanelt. (Megjegyzések: Kiválaszthatja az egyik keresési eredményt, majd Ctrl + A gombokat az összes talált találat kiválasztásához. Lásd a fenti második képernyőképet.)
És akkor láthatja, hogy az összes cella ki van választva, amely tartalmazza a bizonyos értéket.

4. Jobb egérgombbal kattintson a kijelölt cellákra, és válassza ki a Delete a jobb egérgombbal kattintva. És akkor ellenőrizze a Entire row lehetőséget a felbukkanó Törlés párbeszédpanelen, és kattintson a gombra OK gomb. Most látni fogja, hogy az összes cella eltávolítja a bizonyos értéket. Lásd az alábbi képernyőképeket:

És akkor a teljes sorokat már törölték a bizonyos érték alapján.


Távolítsa el a sorokat a VBA kóddal ellátott cellaérték alapján

A következő VBA-kóddal gyorsan törölheti a sorokat bizonyos cellaértékkel, tegye a következőket:

1. megnyomni a Alt + F11 gombokat egyidejűleg a megnyitáshoz Microsoft Visual Basic for applications ablak,

2. Kattints Insert > Module, és írja be a következő kódot a modulba:

VBA: Távolítsa el a teljes sorokat a cella értéke alapján

Sub DeleteRows()
'Updateby20211217
Dim rng As Range
Dim InputRng As Range
Dim DeleteRng As Range
Dim DeleteStr As String
Dim xTitleId As String
Dim xArr
Dim xF As Integer
Dim xWSh As Worksheet
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, rng.Address, Type:=8)
If InputRng Is Nothing Then Exit Sub
DeleteStr = Application.InputBox("Delete Text", xTitleId, Type:=2)
Set xWSh = InputRng.Worksheet
For Each rng In InputRng
    If rng.Value = DeleteStr Then
        If DeleteRng Is Nothing Then
            Set DeleteRng = rng
        Else
            Set DeleteRng = Application.Union(DeleteRng, rng)
            Set DeleteRng = DeleteRng.EntireRow
        End If
    End If
Next
xArr = Split(DeleteRng.AddressLocal, ",")
DeleteRng.Select
DeleteRng.Delete
For xF = UBound(xArr) To 0 Step -1
    Set DeleteRng = xWSh.Range(xArr(xF))
    DeleteRng.Delete
Next
End Sub

3. Ezután kattintson a Run gombot a kód futtatásához.

4. A felbukkanó párbeszédpanelen válassza ki azt a tartományt, ahonnan a sorokat eltávolítja az adott érték alapján, majd kattintson a gombra OK gombot.

5. Egy másik párbeszédpanelen írja be azt a bizonyos értéket, amely alapján eltávolítja a sorokat, és kattintson a gombra OK gomb. Lásd a képernyőképet:

És akkor látni fogja, hogy a teljes sorokat már törölték a megadott érték alapján.


Távolítsa el a sorokat egy vagy két cellaérték alapján a Kutools for Excel alkalmazással

Ha telepítve van Kutools for Excel, annak Select Specific Cells funkció segítségével gyorsan törölheti a meghatározott értékű sorokat. Kérjük, tegye a következőket:

Kutools az Excel számára - Több mint 300 praktikus Excel-eszközt tartalmaz. Teljes szolgáltatás ingyenes próbaverzió 30-nap, nem kell hitelkártya! Szerezd meg most

1. Válassza ki azt a tartományt, amelyből a sorokat eltávolítja az adott érték alapján, majd kattintson a gombra Kutools > Select > Select Specific Cells. Lásd a képernyőképet:

2. A Megnyílt cellák kiválasztása párbeszédpanelen ellenőrizze Entire row válasszuk a lehetőséget Contains ból ből Specific type legördülő listából írja be a megadott értéket a jobb mezőbe, majd kattintson a gombra Ok gombra (lásd a fenti képernyőképet).
A szolgáltatás alkalmazása után megjelenik egy párbeszédpanel, amely megmutatja, hogy hány cellát találtak a megadott kritériumok alapján. Kattintson a gombra OK gombot a bezárásához.

3. Most teljes sorok vannak kijelölve a bizonyos értékkel. Kattintson a jobb gombbal a kijelölt sorokra, majd kattintson a gombra Delete a jobb egérgombbal kattintva. Lásd az alábbi képernyőképet:

Megjegyzések: Ez az Select Specific Cells A funkció támogatja a sorok törlését egy vagy két bizonyos értékkel. Két megadott érték alapján történő sorok törléséhez adjon meg egy másik értéket a Specific type A Speciális cellák kiválasztása párbeszédpanel szakasza az alábbi képernyőkép szerint:

Kutools az Excel számára - Több mint 300 praktikus Excel-eszközt tartalmaz. Teljes szolgáltatás ingyenes próbaverzió 30-nap, nem kell hitelkártya! Szerezd meg most


Távolítsa el a sorokat több cellaérték alapján a Kutools for Excel alkalmazással

Bizonyos esetekben előfordulhat, hogy el kell távolítania a sorokat több cellaérték alapján az Excel másik oszlopából / listájából. Itt bemutatom Kutools for Excel's Select Same & Different Cells funkcióval könnyedén és gyorsan megoldható.

Kutools az Excel számára - Több mint 300 praktikus Excel-eszközt tartalmaz. Teljes szolgáltatás ingyenes próbaverzió 30-nap, nem kell hitelkártya! Szerezd meg most

1. Kattints Kutools > Select > Select Same & Different Cells az azonos és különböző cellák kiválasztása párbeszédpanel megnyitásához.

2. A megnyitón Select Same & Different Cells párbeszédpanelt, kérjük, tegye a következőket (lásd a képernyőképet):

(1) A Find values in mezőbe, válassza ki azt az oszlopot, ahol megtalálja a bizonyos értékeket;
(2) A According to mezőbe, kérjük, válassza ki azt az oszlopot / listát, amely több értéket tartalmaz, és amelyek alapján sorokat töröl;
(3) A Based on szakaszban, kérjük, ellenőrizze a Each row választási lehetőség;
(4) A Find szakaszban, kérjük, ellenőrizze a Same Values választási lehetőség;
(5) Ellenőrizze a Select entire rows opciót a megnyitás párbeszédpanel alján.
Megjegyzések: Ha két megadott oszlop ugyanazt a fejlécet tartalmazza, ellenőrizze a My data has headers opciót.

3. Kattintson az Ok gombra a segédprogram alkalmazásához. Ezután megjelenik egy párbeszédpanel, amely megmutatja, hogy hány sor van kijelölve. Csak kattintson a gombra OK gombot a bezárásához.

Ezután kiválasztották az összes sort, amely a megadott lista között tartalmaz értékeket.

4. Kattints Home > Delete > Delete Sheet Rows az összes kijelölt sor törléséhez.


Bemutató: sorok eltávolítása az Excel egy vagy több cellaértéke alapján


Kutools az Excel számára több mint 300 praktikus eszközt tartalmaz az Excel számára, ingyenesen, korlátozás nélkül, 30 nap alatt kipróbálható. Letöltés és ingyenes próba most!

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 (39)
Még nincs értékelés. Legyen Ön az első, aki értékel!
A weboldal moderátora ezt a megjegyzést minimalizálta
Fantasztikus! Ez remekül sikerült, kicsit átalakítottam, hogy megfeleljen nekem, de tiszta zseniális. Ó, VBA verzió.
A weboldal moderátora ezt a megjegyzést minimalizálta
Bármilyen mód az If (cell.Value) = "Apple" módosítására, hogy több értéket is tartalmazzon?
A weboldal moderátora ezt a megjegyzést minimalizálta
Bobby, próbáld ki ezt, meg kell kapnia, amit akarsz: If (cell.Value) = "Apple" VAGY (cell.Value) = "Monday"
A weboldal moderátora ezt a megjegyzést minimalizálta
Van-e egyáltalán olyan, hogy az érték felismerjen egy értéket, akár > vagy = egy bizonyos értékhez?
A weboldal moderátora ezt a megjegyzést minimalizálta
Hé, nagyon köszönöm a forgatókönyvet. Érdeklődnék, hogy használhatsz-e helyettesítő karaktereket, hogy egy adott elem helyett bármit kijelölj egy cellában, ami megfelel? Próbáltam ** helyettesítő karaktereket használni, de úgy tűnik, hogy nem csinál semmit. Íme, amim van: Sub Delete_Rows() Dim rng As Range, cell As Range, del As Range Set rng = Intersect(Range("B6:B20"), ActiveSheet.UsedRange) Minden egyes cellához in rng If cell. Value Like "*WORDTODELETE*" _ Akkor ha a del semmi, akkor Set del = cell Else: Set del = Union(del, cell) End If End If Next cell Hiba esetén Folytatás Következő del.EntireRow.Delete End Sub
A weboldal moderátora ezt a megjegyzést minimalizálta
Szívből jövő köszönet – mindig mulatságos, amikor a marketinges srác kódot próbál írni, és ez az információ rendkívül hasznos volt. Nem tudtam elérni, hogy a kód több oszlopra terjedjen ki (az "AA2:AA3000" működik, az "AB2:AB3000" működik, de az "AA2:AB3000" nem működik. Nincs földrengető Kaboom - egyszerűen nem csinál semmit. I Megoldottam (azt hiszem, amatőr módon) több makrót egymás után futtatva, de valószínűleg van egy elegánsabb módszer is. Még egyszer köszönöm a segítségedet, Jim (Melville, NY)
A weboldal moderátora ezt a megjegyzést minimalizálta
A következőt kapom: Run-time error '13': Type mismatch A hibakeresés kiemeli az If (cell.Value) = "FALSE" _ Then szakaszt. Teljesen elvesztem az MVB-ben, minden segítséget megköszönnék.
A weboldal moderátora ezt a megjegyzést minimalizálta
Tegyük fel, hogy beírtam az alábbi kódot, hogy töröljem az összes almát tartalmazó sort, de akkor szeretném, ha ez folytatódna, ha ez megtörtént, és törölnöm az összes banánt tartalmazó sort? Megpróbáltam megkettőzni a kódot, de úgy tűnik, az apple után leáll. Kösz. Sub Delete_Rows() Dim rng As Range, cell As Range, del As Range Set rng = Intersect(Range("A1:C20"), ActiveSheet.UsedRange) Minden egyes rng cellához If (cell.Value) = "Apple" _ Akkor ha a del semmi, akkor Set del = cell Else: Set del = Union(del, cell) End If End If Next cell On Error Resume Next del.EntireRow.Delete End Sub
A weboldal moderátora ezt a megjegyzést minimalizálta
Csak köszönni akartam. Ez varázslatként működött.
A weboldal moderátora ezt a megjegyzést minimalizálta
Határozottan remek! Megosztásért köszönet!!!
A weboldal moderátora ezt a megjegyzést minimalizálta
Köszönöm, ez nagyszerű! Gyors megjegyzés, az excel 2010-ben kipróbáltam a keresés és csere funkciót. Az összes talált eredmény kiválasztásához az Alt + A helyett a Ctrl + A billentyűkombinációt kellett használnom.
A weboldal moderátora ezt a megjegyzést minimalizálta
Kedves Kösz
A weboldal moderátora ezt a megjegyzést minimalizálta
Szia! Megírhatom valahogy, hogy töröljön egy sort, VAGY kivétellel? Azaz: törölje azokat a sorokat, amelyek ismétlődnek, de figyelmen kívül hagynak egy bizonyos értéket. Törölni szeretném a duplikációkat, kivéve, ha a kérdéses oszlop üres b/c-t tartalmaz, abban az oszlopban még nincsenek érvényes adatok. Én úgy futottam, mint te, de a szóban forgó oszlopban a sorok törlését egy ürességgel fejeztem be, így nem tudom úgy használni, ahogy van. Kösz
A weboldal moderátora ezt a megjegyzést minimalizálta
Köszönöm a VB Scriptet. Alig várom, hogy kipróbáljam. Kérdés: Meg kell-e jelölni az oszlopokat törlésre a törlés előtt és/vagy másolni a munkafüzet egy külön lapjára? Ezen kívül van mód arra, hogy ezt a szkriptet egyszerre több munkafüzeten/fájlon is lefusson?
A weboldal moderátora ezt a megjegyzést minimalizálta
köszönöm..sokat segít...
A weboldal moderátora ezt a megjegyzést minimalizálta
Törölni szeretném az összes olyan sort, ahol az oszlop1 = "Alma" ÉS a 3. oszlop = "zöld". kérem?
A weboldal moderátora ezt a megjegyzést minimalizálta
Nem tudom, hogyan kell ezt megtenni makrók használatával, de az egyik lehetőség, amely tökéletesen ellátja a feladatát, az, hogy hozzáad egy extra oszlopot, amely azt teszteli, hogy az egyik oszlop „alma”, a másik „zöld”-e, majd hagyjuk. egyszerű "igen" vagy "nem" értéket ad. majd használja a fenti lehetőségek egyikét az "yes" érték kereséséhez, és 2 különálló érték helyett az alapján távolítsa el a sorokat.
A weboldal moderátora ezt a megjegyzést minimalizálta
egy dokumentumban van az üzletek listája. Van egy jelentés, amely ezer sort ad vissza. az üzlet száma mindig az A oszlopban van. Van-e olyan kód/makró, amely megkeresi a jelentést, és törli az összes üzletszámmal rendelkező oszlopot az áruházlistáról? gondolva egy vlookup-ra és a "Do While"-ra van szükség.
A weboldal moderátora ezt a megjegyzést minimalizálta
Üdvözöljük, és nagyon szépen köszönöm a VBA kódot. Van egy kérdésem. Lehetséges-e úgy elkészíteni a kódot, hogy egyszerre több cellaértéket is ki lehessen választani? Például válassza ki egyszerre az Apple-t és az Emilyt, és törölje őket? Köszönöm a munkáját, és várom válaszát. Joan K
A weboldal moderátora ezt a megjegyzést minimalizálta
Hogyan adhatom meg az A3:D3000 tartományt (azaz nem akarom, hogy a felhasználó válassza ki a tartományt)? Hogyan tehetem a Delete String-et cellahivatkozássá, pl. G1?
A weboldal moderátora ezt a megjegyzést minimalizálta
össze lehet hasonlítani két oszlopot, majd törölni? az A3:D3000 tartományban van, ha A=x cella és B=y cella, akkor törli a sort?
A weboldal moderátora ezt a megjegyzést minimalizálta
Milyen nagyszerű. köszönöm szépen mindent. :)
Még senki sem írt megjegyzést
Több ingatlan
Hagyja meg észrevételeit
Feladás vendégként
×
Értékeld ezt a bejegyzést:
0   Karakterek
Javasolt helyek

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