22 января, 2015

Microsoft Excel

Подсветка групп повторяющихся значений в Microsoft Excel

С помощью макроса.

Добавим макрос

Нажимаем Alt+F11 или кнопку Visual Basic на вкладке Разработчик (Developer). Вставляем новый пустой модуль: меню InsertModule. Копируем туда код макроса:

Sub DuplicatesColoring()
     
    Dim Dupes()     'объявляем массив для хранения дубликатов
    ReDim Dupes(1 To Selection.Cells.Count, 1 To 2)
     
    Selection.Interior.ColorIndex = -4142   'убираем заливку если была
    i = 3
    For Each cell In Selection
        If WorksheetFunction.CountIf(Selection, cell.Value) > 1 Then
            For k = LBound(Dupes) To UBound(Dupes)
                'если ячейка уже есть в массиве дубликатов - заливаем
                If Dupes(k, 1) = cell Then cell.Interior.ColorIndex = Dupes(k, 2)
            Next k
            'если ячейка содержит дубликат, но еще не в массиве - добавляем ее в массив и заливаем
            If cell.Interior.ColorIndex = -4142 Then
                cell.Interior.ColorIndex = i
                Dupes(i, 1) = cell.Value
                Dupes(i, 2) = i
                i = i + 1
            End If
        End If
    Next cell
End Sub

Запустим макрос

Выделяем любой диапазон с данными на листе и запускаем макрос с помощью сочетания клавиш Alt+F8 или через кнопку Макросы (Macros) на вкладке Разработчик (Developer).


Добавить комментарий

2010–2018 Блог Максима Златова, контакты

PHP execution time: 0.0061 s.
SQL execution time: 0.0013 s. (select publication with comments)

Яндекс.Метрика