锁定MS Project 2003中的筛选任务

时间:2013-12-18 16:02:42

标签: vba ms-project

在MS Project 2003中,我需要对计划应用一些过滤器,以便只显示某些任务。这很容易,我知道如何做,但当我更改视图时,过滤器消失了,我需要再次应用它。有什么办法可以锁定已过滤的任务,这样当我更改视图时,过滤器会自行维护吗?也可以通过vba。

2 个答案:

答案 0 :(得分:0)

视图是一组设置:表定义,组和过滤器。因此,根据定义,当您选择另一个视图时,将重置过滤器。一个建议是创建您需要的一组视图,并让它们都使用您想要的过滤器。

您可以创建一个宏并将其附加到按钮,但重新选择过滤器几乎与单击该按钮以运行宏一样容易。

答案 1 :(得分:0)

以下是如何在MS Project VBA中使用过滤器的快速示例。这按唯一ID过滤:

Sub Filter_unique_ID()

Dim R As Resource
Dim Report_End As String

ViewApply Name:="Detail Gantt"
'TableApply Name:="Task Tracking"
Report_End = InputBox$("Enter the unique ID:")
If Report_End <> "" Then
FilterEdit Name:="Select", Taskfilter:=True, Create:=True, _
OverwriteExisting:=True, FieldName:="Unique ID", Test:="equals", _
Value:=Report_End, ShowInMenu:=False, ShowSummaryTasks:=False

FilterApply Name:="Select"
End If
End Sub

此功能清除所有过滤器:

Sub ClearFilters()
FilterClear
End Sub