Когда вы работаете с большой таблицей данных, таблица нередко содержит дублирующуюся информацию. Чтобы обработать информацию в таблице, вы можете удалить любую из строк, которые вы считаете дублирующими, тем самым сократив объем информации, который вам нужно обработать.

Например, предположим, что первая ячейка каждой строки содержит номер детали. Что, если вы хотите удалить любые строки, в первой ячейке которых есть повторяющиеся номера деталей? Если вам нужно это решение, вам подойдет следующий макрос:

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.