2

Я использовал условное форматирование, чтобы применить цветовую шкалу к диапазону значений. Теперь я хотел бы навсегда заморозить эти цвета. Я немного покопался и не могу найти событие в начале метода.

Я думаю об этом как о ценности вставки. Мы можем либо скопировать и вставить формулы, которые будут пересчитаны в их новые позиции, либо мы можем скопировать и вставить значения, которые будут просто использовать ранее вычисленные значения и никогда не обновлять их прирост.

Мне нужна версия кисти со «вставкой значений» - она будет применять значения так, как они рассчитываются в данный момент. Так, где ячейка ранее была ярко-красной, потому что это было наименьшее значение в моем диапазоне.

В моем первом примере изображения у меня есть четыре ячейки, поэтому ясно, что я мог просто вручную установить цвета. В моих реальных данных я хочу скопировать цвета, показанные в первой строке моего второго изображения, во все остальные строки:

И для моего следующего трюка я хочу что-то подобное с еще большим исходным диапазоном, поэтому ручная настройка цветов на самом деле не вариант.

Есть идеи? (Excel 2007)


В случае, если кому-то интересно, причина, по которой я хочу это сделать, заключается в том, чтобы я мог использовать советы здесь: http://datapigtechnologies.com/blog/index.php/automatics-set-chart-series-colors-to-match -source-cell-colors/ для создания точечной диаграммы, в которой нескольким десяткам линий дается пара разных плавных градиентов - кластеры связанных линий будут окрашены аналогично, но не одинаково. Вдоль этой темы, но с большим количеством линий в паре разных семейств цветов:

1 ответ1

2

Вам нужно будет использовать VBA для этого, я верю. Раньше было сложно получить условное форматирование цветов даже с помощью vba, но с тех пор они добавили новую функцию.

Ниже будут скопированы цвета в ячейках от А1 до А3. Это не удаляет условное форматирование, поэтому вам придется либо сделать это вручную, либо добавить что-то в макрос для этого.

Я не очень много играл с этим, но похоже, что это должно быть сделано для каждой ячейки (например, макрос), а не для диапазона в целом.

Существует много помощи для выбора всех ячеек, которые вы хотите, и циклического перемещения по ним, если вы ищете что-то более автоматизированное, чем это.

Sub test()
For Each c In Range("A1:A3")
    c.Interior.Color = c.DisplayFormat.Interior.Color
Next
End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .