【问题标题】:Lock filtered tasks in MS Project 2003在 MS Project 2003 中锁定筛选的任务
【发布时间】:2014-11-25 19:01:36
【问题描述】:

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

【问题讨论】:

    标签: vba ms-project


    【解决方案1】:

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

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

    【讨论】:

    • 谢谢。如何创建“我需要的一组视图并让它们都使用我想要的过滤器”?有没有办法将过滤器附加到一个视图或一组视图?
    【解决方案2】:

    这里是如何在 MSProject 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
    

    【讨论】:

      猜你喜欢
      • 2015-10-28
      • 2014-07-27
      • 1970-01-01
      • 2021-10-23
      • 2010-09-17
      • 2018-04-26
      • 2014-05-05
      • 2011-07-06
      • 1970-01-01
      相关资源
      最近更新 更多