Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.02.2015, 18:12   #1
AlisaLisa
Новичок
Джуниор
 
Регистрация: 13.02.2015
Сообщений: 1
По умолчанию Изменение ячейки в цикле по отфильтрованному списку.

Добрый форумчанины, помогите пожалуйста. Вопрос жизни и смерти , практически в буквальном смысле.....
Есть вот такой код:
Код:
pos = ActiveSheet.AutoFilter.Range.Offset(1, 0).Resize(ActiveSheet.AutoFilter.Range.Rows.Count - 1, ActiveSheet.AutoFilter.Range.Columns.Count).Columns(10).SpecialCells(xlCellTypeVisible).Cells(1)

    For Each x In ActiveSheet.AutoFilter.Range.Offset(1, 0).Resize(ActiveSheet.AutoFilter.Range.Rows.Count - 1, ActiveSheet.AutoFilter.Range.Columns.Count).Columns(10).SpecialCells(xlCellTypeVisible)
        If pos = x And Count = 0 Then
            Cells(x, 10).Interior.ColorIndex = 6
            Count = 1
        Else
            If pos = x And Count <> 0 Then Cells(x, 10).Interior.ColorIndex = 3
            
        
    End If
    Next
Суть задачи для которой этот код написан. Есть отфильтрованный список, в нём есть столбец со значениями, например 2,2,3,4,2,1,5,6,4,4.
Задача в том чтобы оставить только одну уникальную запись по данному опираясь на данный столбец, то есть чтобы получилось 2,3,4,1,5,6.
По моему придуманному алгоритму, все уникальные ячейки с уникальным значением пометить жёлтым, а остальные красным цветом, вот собственно разъяснение кода и суть проблемы"

В первом цикле, идёт перебор значений по одному столбцу в отфильтрованом списке, не считая первой строки, шапки.
Дальше условия на совпадение тоесть если первый элеменn в этом столбце равен самому себе, то эта ячейка закрашивается жёлтым и счётчик увеличивается на 1.
Если оно выполняется то то ячейка должна закраситься жёлтым цветом - вот именно в этом месте,
в этой строчке
Код:
Cells(x, 10).Interior.ColorIndex = 6
у меня проблема(((
Как правильно записать в данном случае, а то у меня получается либо он первый элемент который вообще во всём списке вначале идёт, либо вообще всю страницу окрашивает(
AlisaLisa вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сохранение файлов именем ячейки в цикле. AJIEXEY Microsoft Office Excel 9 24.07.2013 21:51
Изменение размера ячейки Скрипт Microsoft Office Word 44 15.02.2013 13:39
Фильтрация по отфильтрованному savraska БД в Delphi 4 18.05.2012 17:13
Изменение ячейки в Excel A-Lex-Is Microsoft Office Excel 12 29.12.2011 14:00
Изменение имени компонента в цикле Lokos Общие вопросы Delphi 5 01.08.2011 08:33