如何以编程方式更改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 MSDN和Application.ActiveCell.CellColor
设置单元格link to MSDN
但是有一个棘手的部分的颜色:Application.SelectTaskCell
接受rowId
作为第一个参数,也没有办法通过任何任务属性得到行ID。因此,我在我的测试样品中所做的:
- 禁用过滤器通过切换到 “所有任务” 筛选器(
Project.TaskFilters
集合) - 禁用分组(
Application.GroupApply("No Group")
) - 禁用自动筛选(
Application.AutoFilter = False
) - 度假村一切按ID(
Application.Sort(Key1:="ID", Ascending1:=True)
)
之后,Task.ID应该非常接近任务行的Id。您可以仔细检查通过ActiveCell.Task
选择了哪些任务,但这取决于您。
非常感谢,新年快乐!你帮了我! – al072