Вопрос

Я ищу способ, возможно, использую 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
/ a> имеет более подробную информацию о двух.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top