Задачи цветового кодирования в макросе Microsoft Project - PullRequest
1 голос
/ 10 мая 2011

Кажется, это должно быть прямо, но я вижу странное поведение.Я пытаюсь раскрасить мои задачи в зависимости от флага.Кажется, что он правильно окрашивает задачи, но в какой-то момент обработки начальные задачи, которые были окрашены, сбрасываются в черный.Задача, над которой это происходит, также кажется довольно противоречивой.Вот как я пытаюсь выполнить эту задачу (в упрощенном виде):

Sub ColorTasks()
    Dim t As Task
    For Each t In ActiveProject.Tasks
        SelectRow t.ID, RowRelative:=False
        Font32Ex Color:=2366701
    Next
End Sub

Этот код отлично работает для небольших наборов данных, но этот проект содержит около 2000 задач.Есть идеи?

Ответы [ 2 ]

1 голос
/ 03 декабря 2013

Я знаю, что это старый вопрос, но я надеюсь, что он может быть полезен для кого-то с подобной проблемой.

Ошибка в том, что вы забыли добавить 'H' перед шестнадцатеричным числом, поэтому правильнодолжно быть:

Font32Ex CellColor:=&H3A3AD4
etc
1 голос
/ 09 июня 2011

Да, у меня тоже есть похожая проблема: *

For Each t In tsks
    Select Case t.Text1
        Case "COMPLETE"
            SelectRow Row:=t.ID, RowRelative:=False
            Font32Ex CellColor:=&659B59
        Case "NOT STARTED"
            SelectRow Row:=t.ID, RowRelative:=False
            Font32Ex CellColor:=&862525
        Case "IN PROGRESS"
            SelectRow Row:=t.ID, RowRelative:=False
            Font32Ex CellColor:=&3A3AD4
    End Select
Next t

Согласно: http://msdn.microsoft.com/en-us/library/ff863572.aspx это должно работать, но каждый раз я получаю синтаксические ошибки.Единственный способ заставить это работать, если я использую метод FontEx, который ограничивает меня только 16 цветами ....

...