Страницы: 1
RSS
Скопировать цвет условного форматирования
 
Есть ячейка с условным форматированием (которое задано формулой). Мне нужно скопировать эту ячейку и вставить на другой лист, как значение без правил условного форматирования, но что бы цвет сохранился. Подскажите пожалуйста, можно ли это сделать стандартными средствами? Ну или с помощью макроса?
 
Цитата
DopplerEffect написал:
но что бы цвет сохранился.
в зависимости от того ,какая версия excel, а также чего цвет нужно сохранить, можно скопировать макросом результирующий формат
примерно так
Код
Cell2.activecell.Format.Interior.Color=Cell1.DisplayFormat.Interior.Color
По вопросам из тем форума, личку не читаю.
 
DopplerEffect,
определить цвет ячейки можете вот так:
Код
ActiveCell.DisplayFormat.Interior.Color
 
Спасибо, работает!
 
Хороший вопрос. Мне кажется, что стандартными средствами не получится, надо будет писать макрос. Если условие одно, макрос достаточно простой, если несколько условий - надо будет проверить в макросе, какое из условий выполняется.  

Вот пример простого макроса, если условие одно (и оно выполняется). Надо будет два раза выбрать ячейку - сначала исходную (Select Source Cell) потом ту, в которую надо будет вставить (Select Target Cell). Проверил у себя на простом примере -  сбоев не обнаружил (но они могут быть :)
Код
Sub CopyValueAndCondFormatColors()
    
    Dim Source As Range, Target As Range
    
    Set Source = Application.InputBox("Select SOURCE cell", Default:=Selection.Address, Type:=8)
    Set Target = Application.InputBox("Select TARGET cell", Default:=Selection.Address, Type:=8)
    
    Target.Value = Source.Value
    If Source.FormatConditions.Count > 0 Then
        With Target
            .Interior.Color = Source.DisplayFormat.Interior.Color
            .Font.Color = Source.DisplayFormat.Font.Color
        End With
    End If
    
End Sub
Изменено: Yurik74 - 15.09.2021 10:02:43 (обновление кода для случая невыполнения условия)
 
Цитата
Юрий Сутурин написал:
сбоев не обнаружил (но они могут быть
и будут. Кто сказал что условие выполняется, даже если оно одно?
По вопросам из тем форума, личку не читаю.
 
БМВ, век живи, век учись :)
Предлагаю изменить FormatConditions(1) на DisplayFormat. Тогда ведь и количество условий становится неважным. Просто не знал про DisplayFormat  
Изменено: Yurik74 - 15.09.2021 10:04:24
 
Добрый день!
Увидел в интернете красивую визуализацию и думал что ее легко повторить.
Но столкнулся с задачей, что не знаю как скопировать цвет ячейки и сделать тепловую карту.
Файл приложен.
Есть таблица в столбце располагаться цифровые данные. И они стандартной функцией условного форматирования "Цветовые шкалы" окрашиваться в цветовые оттенки.
Вопрос как окрасить в точно такой же цвет ячейку на схематической карте, чтобы в случае изменения данных в таблице и изменении оттенков согласно форматирования по "Цветовой шкале" цвета на карте также бы изменялись.
Если есть решение прошу объяснить максимально доходчиво я макросами я на вы.
 
написать макрос гораздо проще, чем обьяснять
Код
Sub CellsColor()
  Dim rg As Range, r&, c As Range, f As Range
  For Each c In [p101:ah122]
    If IsEmpty(c) Then Set f = c.Offset(-1, 0) Else Set f = c
    If Not IsEmpty(f) Then
      If WorksheetFunction.CountIf([g:g], f) Then
        r = WorksheetFunction.Match(f, [g:g], 0)
        c.Interior.Color = Cells(r, 8).DisplayFormat.Interior.Color
      End If
    End If
  Next
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Добрый день Игорь!
Действительно работает!!!
Огромное спасибо!!!
Цитата из фильма "Олигарх": "Фокусник.... Ловко.....Я правда ни.... не понял, но башка у вас варит".
В очередной раз понял "Когда знаешь - все просто", надо учить макросы.

Ух пошел дальше тестировать, а если некоторые квадратики на условной карте поменять местами тоже будет работать?
А как если придется поменять столбец с исходными данными или данные должны быть только в столбце "H"?

Не ожидал что так оперативно найдется решение!!!

СПАСИБО!!!  
 
Цитата
Артём Кузнецов написал:
а если некоторые квадратики на условной карте поменять местами тоже будет работать?
А если самостоятельно взять и проверить? Или нет никакой возможности это сделать?
Артём Кузнецов,  ну вот зачем подобные вопросы?
Страницы: 1
Наверх