Поскольку вы не можете установить цвет ячейки, основанный на цвете другой ячейки, используя условное форматирование или любые другие методы интерфейса, вам придется использовать VBA.
Предполагая, что ваши данные с цветами находятся в строке N и начинается в строке 500. Также предполагается, что ваша первая ячейка для копирования - N1 и ссылается на N500 как =if(N500="", "", N500)
. Далее, предполагая, что вы скопируете эту формулу до N499; VBA будет выглядеть так:
Sub copyValuesAndFormats()
Dim intRow As Integer
Dim rngCopy As Range
Dim rngPaste As Range
'Loop from Rows 1 through 499
For intRow = 1 To 499
'Set the copy and paste range
'CHANGE THE SHEET TO MATCH YOURS
Set rngCopy = Sheet3.Range("N" & intRow + 499)
Set rngPaste = Sheet3.Range("N" & intRow)
'Test to see if rows 500+ have a value
If rngCopy.Value <> "" Then
'Since it has a value, copy the value and color
rngPaste.Value = rngCopy.Value
rngPaste.Interior.Color = rngCopy.Interior.Color
'If you wish to copy the color of the font as well, uncomment the next line
'rngPaste.Font.Color = rngCopy.Font.Color
End If
Next intRow
End sub
Если вы используете это, то никакие формулы не нужны в N1:N499. Они все равно будут уничтожены этим кодом.