Раскрашивание ячеек в Excel с помощью значений ячейки CMYK

Я ищу способ, возможно, используя VBA, чтобы применить значение заполнения ячейки, просмотрев определенные поля в той же записи. Это будет пример таблицы с разделителями Excel:

BEGIN_DATA_FORMAT SampleID SAMPLE_NAME CMYK_C CMYK_M CMYK_Y CMYK_K LAB_L LAB_A LAB_B BEGIN_DATA 1 1 100 0 0 60 34.16 -19.52 -27.46 2 2 100 100 0 60 22.02 6.27 -23.25 3 3 100 0 0 0 54.56 -31.12 -45.29 END_DATA 

Поля 3-6 содержат значения для CMYK соответственно. Я хотел бы применить заливку фона ячейки в поле 1, проанализировав каждую запись для комбинированных значений CMYK в качестве отправной точки.

Преобразование в RGB или HSL может потребоваться сначала, если нет метода backdoor для установки значений CMYK в наборе цветов Excel / Windows.

это даст вам RGB из CYMK в ваших данных:

 Function CYMK2RGB(c As Integer, y As Integer, m As Integer, k As Integer) As Long Dim R As Integer Dim G As Integer Dim B As Integer Dim colors As Integer colors = 255 * (100 - k) / 100 R = colors * (100 - c) / 100 G = colors * (100 - m) / 100 B = colors * (100 - y) / 100 CYMK2RGB = RGB(R, G, B) End Function 

используя range("A1").Interior.Color=cymk2rgb(...) установит цвет – заметьте, что это не будет точное совпадение, поскольку CYMK является субтрактивным, а RGB является аддитивным. этот сайт: http://www.printernational.org/rgb-versus-cmyk.php имеет более подробную информацию об их сравнении.

Давайте будем гением компьютера.