Coreldraw VBA выбрать все цвета CMYK - PullRequest
0 голосов
/ 09 января 2019

Ребята, я пытаюсь выбрать все цвета определенного цвета в текущем выборе

Я использую следующее, чтобы узнать все цвета в выборе

Dim s As Shape
Dim value As String, os As ShapeRange
Set os = ActiveSelectionRange
If os.Count < 1 Then MsgBox ("Nothing selected!"): Exit Sub
For Each s In os
value = s.Fill.UniformColor.ToString
MsgBox (value)
Next s

Проблема в том, что значение строки выглядит следующим образом

CMYK, USER, 0,84,80,100,000000000-0000-0000-0000-00000000000

Мне нужно извлечь 4 цифры между 2-й и 6-й запятой, чтобы у меня был цвет cmyk, а затем я могу найти фигуры, используя этот

Я искал идеи по работе со строками в VB, но, похоже, они предназначены для Excel, а не для coreldraw

Любые идеи ??

Любая помощь приветствуется

Mark

1 Ответ

0 голосов
/ 15 января 2019

Split - собственная функция VBA, как упоминалось в @RCL. Попробуйте приведенный ниже пример:

Sub Test()

    Dim s As Shape
    Dim value As String
    Dim os As ShapeRange
    Dim tmp

    Set os = ActiveSelectionRange
    If os.Count < 1 Then MsgBox ("Nothing selected!"): Exit Sub
    For Each s In os
        value = s.Fill.UniformColor.ToString
        tmp = Split(value, ",")
        MsgBox tmp(2) & vbCrLf & tmp(3) & vbCrLf & tmp(4) & vbCrLf & tmp(5)
    Next s

End Sub
...