如何以编程方式更改MS Project 2007单元格中的背景颜色?

问题描述:

我正在努力使用C#自动化一些MS Project功能,并找不到解决方案如何更改特殊任务单元的背景和字体颜色。如何以编程方式更改MS Project 2007单元格中的背景颜色?

我列举项目的所有任务的代码样本中,如果statemet是真的,当我想改变当前单元格颜色

foreach(Task t in Project.Tasks) 
{ 
    if(t.Name=="TaskName") 
    { 
     //I want to change back color of current cell here 
    } 
}  

最简单的部分是如何选择电池的电池和换色:Application.SelectTaskCell选择一个单元格link to MSDNApplication.ActiveCell.CellColor设置单元格link to MSDN

但是有一个棘手的部分的颜色:Application.SelectTaskCell接受rowId作为第一个参数,也没有办法通过任何任务属性得到行ID。因此,我在我的测试样品中所做的:

  1. 禁用过滤器通过切换到 “所有任务” 筛选器(Project.TaskFilters集合)
  2. 禁用分组(Application.GroupApply("No Group")
  3. 禁用自动筛选(Application.AutoFilter = False
  4. 度假村一切按ID(Application.Sort(Key1:="ID", Ascending1:=True)

之后,Task.ID应该非常接近任务行的Id。您可以仔细检查通过ActiveCell.Task选择了哪些任务,但这取决于您。

+0

非常感谢,新年快乐!你帮了我! – al072