Удаление повторяющихся строк (Microsoft Excel)
Когда вы работаете с большой таблицей данных, таблица нередко содержит дублирующуюся информацию. Чтобы обработать информацию в таблице, вы можете удалить любую из строк, которые вы считаете дублирующими, тем самым сократив объем информации, который вам нужно обработать.
Например, предположим, что первая ячейка каждой строки содержит номер детали. Что, если вы хотите удалить любые строки, в первой ячейке которых есть повторяющиеся номера деталей? Если вам нужно это решение, вам подойдет следующий макрос:
Sub DelDupRows() Dim rngSrc As Range Dim NumRows As Integer Dim ThisRow As Integer Dim ThatRow As Integer Dim ThisCol As Integer Dim RightCol As Integer Dim J As Integer, K As Integer Application.ScreenUpdating = False Set rngSrc = ActiveSheet.Range(ActiveWindow.Selection.Address) NumRows = rngSrc.Rows.Count ThisRow = rngSrc.Row ThatRow = ThisRow + NumRows - 1 ThisCol = rngSrc.Column RightCol = ThisCol + rngSrc.Columns.Count - 1 'Start wiping out duplicates For J = ThisRow To (ThatRow - 1) If Cells(J, ThisCol) > "" Then For K = (J + 1) To ThatRow If Cells(J, ThisCol) = Cells(K, ThisCol) Then Cells(K, ThisCol) = "" End If Next K End If Next J 'Remove rows with empty key cells For J = ThatRow To ThisRow Step -1 If Cells(J, ThisCol) = "" Then Range(Cells(J, ThisCol), _ Cells(J, RightCol)).Delete xlShiftUp End If Next J Application.ScreenUpdating = True End Sub
Макрос работает с выделением, которое вы сделали перед его вызовом. Таким образом, если вам нужно удалить повторяющиеся строки из диапазона D7: G85, просто выберите этот диапазон и затем запустите макрос. Он удаляет дубликаты из диапазона D7: D85, а затем удаляет все строки в D7: G85 (четыре столбца в строке), для которых ячейка в столбце D пуста.
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (2108) применим к Microsoft Excel 97, 2000, 2002 и 2003.