Sie sind auf Seite 1von 5

Advanced Microsoft Project Filters

March 8, 2010
The help manual for MS Project is less then useful for deciphering how to do complex filters. It
would be nice if they just addressed it like any other language syntax. Wildcards? Reserved
words? Special Functions? Anyhow, below is a list fo some standard filters you may want to use
in Project. If you look closely youll notice a few tricks to get around the inflexible nature of
Projects filter syntax. One trick is to use the IIF operator to evaluate a statement within a
custom field formula. The formula sets the fields value then the filter evaluates that value.
Another trick is used for getting around Projects oddball treatment of Null or N/A dates. To
check for these dayes you use a built-in project function e.g. Projdatevalue(NA).
Cheers,
Trevor Lowing
Office Tech Support
Flag
Flag Field Formula
Field
IIf(([Start]<([Status Date]+14)
All work scheduled
And ([% Complete]<100)) And
during the next
Flag5
([Finish]>[Status
two weeks.
Date]),Yes,No)
Activities that
should have started
but have not or
IIf(([Start]<([Status Date]) And
Flag6
have started but
([% Complete]=0)),Yes,No)
have not
completed.
Activities that
should have
IIf(([Finish]<([Status Date]) And
Flag7
finished
([% Complete]<100)),Yes,No)
but have not.
Activities where Flag8 IIf((([Actual Start]>[Status Date])
the actual complete
And ([Actual
date is in the future
Start]<>projdatevalue(NA)))Or
or a Deadline has
been set.
(([Actual Finish]>[Status Date]) And
([Actual
Start]<>projdatevalue(NA)))

Filter Name Description

Filter Text

Next Two
Weeks

Flag5 equals Yes

Late Start

Late Finish
Future
Actual Or
Deadline

Or

Flag6 equals Yes

Flag7 equals Yes


Flag8 equals Yes

([Deadline]<>projdatevalue(NA))
,Yes,No)
Logical
Finish

Activities with no
successors.

Logical Start

Activities with no
predecessors.

LongDuration

Activities with a
duration greater
than 40 days.

Negative
Float

Activities with
Total Slack less
than
zero.

Summarywith-PredLinks

Activities with
predecessor
links.

Summarywith-SuccLinks

Activities with
successor
links.

Constraint
Not ASAP

Activities not
constrained as
soon as possible

Summary equals
No And
Successors
equals
Summary equals
No And
Predecessors
equals
Summary equals
No And Duration
is
greater than 40d
Summary equals
No And Total
Slack is
less than 0d
Summary equals
Yes And
Predecessors
does not equal
Summary equals
Yes And
Sucessors does
not equal
Constraint Type
does not equal As
soon As Possible

Creating Complex MS Project Filters


April 25, 2010
Filters are simple expressions used to select a subset of the total tasks. Filter
expressions have four parts: And/Or statement, Field Name, Test and Value.
For instance, to select all the tasks without a predecessor you would enter

And/Or

Field Name

Test

Successors

equals

Value

And/Or:
Used to connect expressions. Choosing And means the current line and the
proceeding line must both be true for a record to match. Choosing Or means
one expression or the other must be true for the record to be selected.
Importantly, if a And/Or resides on
a line by itself, it is used to join multiple expressions to create complex
filters. For Instance, all the records with both a predecessor and a successor
and a Start Date or Finish date before today.
And/Or
and

Field Name

Test

Value

Successors

does not equal

Predecessors

does not equal

Start

is less than

[Status Date]

Finish

Is less that

[Status Date]

and
and

Field Name: The name of any of the 300+ MS Project fields. Some fields are
at the task or rosoure record level and others are at the project level. The
most commonly used record fields are UniqueId, ID, Name, Duration, Start,
Finish, Predecessors, Successors,[% Complete], Type, Summary and Rollup.
Common project level fields are [Status Date],[Current Date] and [Project
Calendar].
Test : A simple evaluative expression. The choices are: equals, does not
equal, is greater than, is greater than or equal to, is less than, is less than or
equal to, is within, is not within, contains, does not contain, contains exactly.
The only tricky thing about the test is for is within and is
not within. For those, the value is a comma separated list of low and high
values. e.g.
And/Or

Field Name

Test

Value

Start

is within

1/1/2000,12/31/2010

Value:
The value being evaluated by the test, be it a number, number range,
date, date range, string of characters or another field ([Actual
Cost] equals [Baseline Cost]). For text fields a wildcard can be
used to specify a portion of the text string. An asterix (*) can match
any group of characters proceeding or succeeding a string (*ple
pie or apple pi* ) and a question mark (?) can
match a character within a string (apple
p?e or a??le pie).
And/Or

Field Name

Test

Value

Name

contains

*Project Sta?rt*

You can prompt a user to enter a value


by putting a question mark after a quoted expression. (Enter
date:?).
And/Or

Field Name

Test

Value

[Start]

Is less than

Enter date:?

If you are testing for an empty field


value then use NA for dates, 0 for numbers and
currency and leave the test blank for text fields.
And/Or

Field Name

Test

Value

[Actual Start]

equals

NA

And

[Actual Duration]

equals

And

[Name]

does not equal

For more complex filters,


you can combine calculated field values to filter the correct items.
If you wanted all the tasks where the [Baseline Start]-[Start] <>
0 you would accomplish this in two steps.
1. Create a customized number
field, say Number1, with a formula:

IIf([Baseline Start]projdatevalue(NA),Fix([Start]-[Baseline
Start]),0)
1. Create a filter to select
where Number1 <>0
And/Or

Field Name

Test

Value

Number1

does not equal

Das könnte Ihnen auch gefallen