Как да изтрия редове, които не отговарят на критериите на друг лист?
Може да не е трудно за вас да изтриете редове, които не отговарят на критериите на същия лист, но знаете ли някакви начини да изтриете редовете, които не отговарят на критериите на друг лист, както е показано по-долу. Сега имам два трика, които могат да ви помогнат бързо да го разрешите.
Изтрийте редове, които не отговарят на критериите на друг лист с VBA
Изтрийте редове, които не отговарят на критериите на друг лист с Kutools за Excel
Критерии (в лист 2) | Преди (Лист 1) | След (Лист1) |
Изтрийте редове, които не отговарят на критериите на друг лист с VBA
Има VBA код, който може да ви помогне да изтриете редове, които не отговарят на критериите на друг лист.
1. Натиснете Alt + F11 за показване на Microsoft Visual Basic за приложения прозорец.
2. В прозореца щракнете Поставете > Модули за да покажете нов прозорец на модула, след това копирайте следния VBA код в прозореца на модула.
VBA: Изтриване на редове, които не отговарят на критериите на друг лист в Excel.
Sub DeleteRow()
'Updateby20140618
Dim rng As Range
Dim Rng1 As Range, Rng2 As Range
Dim arr1 As Variant
Dim arr2 As Variant
Dim dic2 As Variant
Dim OutArr As Variant
xTitleId = "KutoolsforExcel"
Set Rng1 = Application.Selection
Set Rng1 = Application.InputBox("Range1 :", xTitleId, Rng1.Address, Type:=8)
Set Rng2 = Application.InputBox("Range2:", xTitleId, Type:=8)
Set Rng1 = Rng1.Columns(1)
Set Rng2 = Rng2.Columns(1)
Set dic2 = CreateObject("Scripting.Dictionary")
arr1 = Rng1.Value
arr2 = Rng2.Value
For i = 1 To UBound(arr2, 1)
xKey = arr2(i, 1)
dic2(xKey) = ""
Next
Rng1.ClearContents
OutArr = Rng1.Value
xIndex = 1
For i = 1 To UBound(arr1, 1)
xKey = arr1(i, 1)
If dic2.Exists(xKey) Then
OutArr(xIndex, 1) = xKey
xIndex = xIndex + 1
End If
Next
Rng1.Value = OutArr
End Sub
3. кликване бягане, а Kutools за Excel се появява диалогов прозорец, за да изберете диапазон, който искате да изтриете редовете, които не отговарят на критериите. Вижте екранна снимка:
4. кликване OKи се появява друг диалогов прозорец за избор на критерии в друг лист, вижте екранна снимка:
5. Сега всички редове, които не отговарят на критериите в друг лист, се премахват.
Изтрийте редове, които не отговарят на критериите на друг лист с Kutools за Excel
Ако VBA кодът е малко труден за вас, можете да опитате Kutools за функцията за сравнение на диапазони на Excel.
Kutools за Excel включва повече от 300 удобни инструмента на Excel. Безплатно изпробване без ограничение за 30 дни. Махни го сега
1. Изберете листа, който искате да изтриете редовете, които не отговарят на критериите. И щракнете Kutools > Сравнете диапазони. Вижте екранна снимка:
2. В Сравнете диапазони щракнете върху бутона в Диапазон Bи след това можете да изберете диапазона на критериите, от който се нуждаете. Вижте екранна снимка:
3. След това кликнете OK, след това обратно към Сравнете диапазони диалог, проверка Различна стойност намлява Изберете цели редове. Вижте екранна снимка:
4. кликване Okи излезте от Сравнете диапазони диалогов прозорец. След това виждате, че са избрани редовете със стойности, които са различни от критериите.
5. Щракнете с десния бутон, за да щракнете Изтрий от контекстното меню, за да изтриете редовете, които не отговарят на критериите на друг лист.
Щракнете тук за повече информация относно диапазоните за сравнение на Kutools за Excel.
Относителни статии:
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!