Страницы: 1
RSS
Условное форматирование и сводные таблицы
 
Всем добрый день. Столкнулся с проблемой распространения условного форматирования как в динамическом диапазоне, так и в сводной таблице.  
Вариант сделать запас строк/столбцов быстро отпал - при обновлении сводная таблица как будто удаляет столбцы и создает заново с новыми значениями и как следствие, в диапазоне, на который распространено условное форматирование удаляется блок столбцов непосредственно с данными.  
 
Если забить именованный динамический диапазон в диапазон на который распространяется усл форматирование, то оно просто рассчитывает диапазон и вставляет фиксированное значение.  
 
На сколько понимаю, единственно возможный вариант управления это программно - задание диапазона макросом.  
 
Я очень слаб в макросах, по этому прошу помочь.  
1. Каким кодом можно просто обновить диапазон в существующем правиле усл форм?  
2. Если 1 не возможно, то как создать новое и при этом удалить все существующие?  
3. Возможно ли завязать макрос на активацию обновления сводной таблицы? Т.е. чтобы макрос запускался сам при попытке обновить данные в сводной таблице?  
 
P.S. Пример не выкладываю, думаю задача и так понятна. Но если нужно, могу выложить.
 
В параметрах сводной таблицы поставьте галочку сохранять форматирование при обновлении поможет
 
Микки, галочка стоит в данном параметре, но это не помогает, как ни странно.
 
{quote}{login=BioVR}{date=13.03.2012 10:49}{thema=}{post}Микки, галочка стоит в данном параметре, но это не помогает, как ни странно.{/post}{/quote}  
Не знаю я проверил у меня сохранилось УФ при обновлении правда у меня форматирование на основании значения ячейки
 
{quote}{login=BioVR}{date=13.03.2012 10:32}{thema=Условное форматирование и сводные таблицы}{post}  
P.S. Пример не выкладываю, думаю задача и так понятна. Но если нужно, могу выложить.{/post}{/quote}  
Давайте пример
Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете?
 
{quote}{login=Микки}{date=13.03.2012 11:03}{thema=Re: }{post}Не знаю я проверил у меня сохранилось УФ при обновлении правда у меня форматирование на основании значения ячейки{/post}{/quote}  
Прикрепляю файл с примером. Попробуйте обновить таблицу - строка выделенная синим останется только на графах с названием строк, а где идут значения форматирования не будет.
 
Private Sub Worksheet_Calculate()  
   Dim i As Long  
   Dim r As Range  
     
   For Each r In Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row)  
       If r.Value = "Все" Then  
           For i = 3 To 7  
               r.Cells.Offset(0, i).Interior.Color = 15773696  
           Next  
       End If  
   Next  
End Sub
Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете?
 
Спасибо. Но это, на сколько я понял, присвоение цвета строке в случае, если в конкретном столбце есть значение "Все". И это не условное форматирование, а заливка определенных ячеек. И в указанном коде идет привязка к конкретному количеству столбцов, что тоже не удобно, т.к. количество столбцов будет меняться. И кроме указанного в примере условия у меня есть еще несколько с большим количеством условий.  
 
Разве нельзя задать существующему усл форм диапазон программно?
 
Поиск:  
 http://www.planetaexcel.ru/forum.php?thread_id=15483  
 
ps. можно перенести все Ваши условия УФ в VBA, но на это уйдет уйма времени (конечно если у Вас их много)
Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете?
 
LightZ, посмотрел тему по ссылке. Только не понятно, что за волшебное "правило условного форматирования специально для этой сводной таблицы"? Точнее где его искать?  
 
P.S. Если прописывать макросом закраску и форматирование самих ячеек, то это конечно довольно долго.
 
Удалось найти решение. В общем то оказалось не все так сложно, но как обычно замароченно.  
 
Для строк в которых прописаны записи создается обычное условное форматирование. А для ячеек, в которых значения создается форматирование отдельно. По скольку обычно все ячейки имеют одинаковый формат, то усл форм само спрашивает какие ячейки форматировать.  
Как следствие после обновления таблицы все остается.  
 
Пример прилагаю.
 
Ну вот, видите, всё оказалось просто
Киса, я хочу Вас спросить, как художник — художника: Вы рисовать умеете?
Страницы: 1
Читают тему
Наверх