Доброго времени суток. Уже 2-й час брожу по инету так и не смог найти то, что нужно. Задача: Удалить дубликаты построчно если в ячейке рядом значение меньше Яблоки 1 Яблоки 2 Слива 1
должно удалиться яблоки 1
почему-то пошел через УФ, и уже просто интересно как же все-таки это воплотить. Есть диапазон с УФ отсортированный по цвету УФ. Цвет один любой. Нужно с помощью VBA найти диапазон с УФ и удалить все строки. перепробовал много вариантов, попытался даже так. [vba]
Код
For i = 2 To Endd If Cells(i, 4).Interior.Color = 5287936 Then y = y + 1 End If Next
[/vba] но все равно ничего не получил. через меню Найти - Показать - УФ выделяется весь диапазон который был подвержен УФ
Доброго времени суток. Уже 2-й час брожу по инету так и не смог найти то, что нужно. Задача: Удалить дубликаты построчно если в ячейке рядом значение меньше Яблоки 1 Яблоки 2 Слива 1
должно удалиться яблоки 1
почему-то пошел через УФ, и уже просто интересно как же все-таки это воплотить. Есть диапазон с УФ отсортированный по цвету УФ. Цвет один любой. Нужно с помощью VBA найти диапазон с УФ и удалить все строки. перепробовал много вариантов, попытался даже так. [vba]
Код
For i = 2 To Endd If Cells(i, 4).Interior.Color = 5287936 Then y = y + 1 End If Next
[/vba] но все равно ничего не получил. через меню Найти - Показать - УФ выделяется весь диапазон который был подвержен УФKreol
RAN, ну так оно удалит весь столбец, так как уФ применяется ко всем столбцам и строкам. Под словами удалять ВСЕ, имелось ввиду то что выделено цветом во всех столбцах
RAN, ну так оно удалит весь столбец, так как уФ применяется ко всем столбцам и строкам. Под словами удалять ВСЕ, имелось ввиду то что выделено цветом во всех столбцахKreol2013
Сообщение отредактировал Kreol2013 - Среда, 16.01.2013, 22:39
Sub ertert() Dim x, i&, j&, ubx& x = Range("A1").CurrentRegion.Value: ubx = UBound(x, 2) With CreateObject("Scripting.Dictionary") .CompareMode = 1 For i = 1 To UBound(x) For j = 1 To ubx - 1 .Item(x(i, j)) = Empty Next j Next i For i = 1 To UBound(x) If .Exists(x(i, ubx)) Then x(i, ubx) = Empty Next i End With Range("A1").CurrentRegion.Value = x End Sub
[/vba]
вариант массового ВПР [vba]
Код
Sub ertert() Dim x, i&, j&, ubx& x = Range("A1").CurrentRegion.Value: ubx = UBound(x, 2) With CreateObject("Scripting.Dictionary") .CompareMode = 1 For i = 1 To UBound(x) For j = 1 To ubx - 1 .Item(x(i, j)) = Empty Next j Next i For i = 1 To UBound(x) If .Exists(x(i, ubx)) Then x(i, ubx) = Empty Next i End With Range("A1").CurrentRegion.Value = x End Sub