2.5.36 CFMultistate

The CFMultistate structure specifies the parameters for a conditional formatting rule that represents cell values with icons from an icon set.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

unused

reserved1

cStates

iIconSet

A

B

C

reserved3

rgStates (variable)

...

unused (2 bytes): Undefined and MUST be ignored.

reserved1 (1 byte): MUST be zero and MUST be ignored.

cStates (1 byte): An unsigned integer that specifies the number of items in the icon set. MUST be the value from the following table:

Value of iIconSet

Value of cStates

Between 0x00 and 0x07 included

0x03

Between 0x08 and 0x0C included

0x04

Between 0x0D and 0x10 included

0x05

iIconSet (1 byte): An unsigned integer that specifies the icon set that represents the cell values. MUST be the value from the following table:

Value

Meaning

0x00

3 colored arrows. Green pointing up, yellow pointing right, red pointing down

0x01

3 gray arrows. One pointing up, one pointing right, one pointing down

0x02

3 colored flags. One green, one yellow, one red

0x03

3 round traffic lights. One green, one yellow, one red.

0x04

3 colored signs. One green circle, one yellow triangle, one red diamond

0x05

3 round traffic lights with black rectangle borders. One green, one yellow, one red.

0x06

3 colored symbols. One green circle with check mark in center, one yellow circle with exclamation poin in center, one red circle with X in center

0x07

3 colored symbols. One green check mark, one yellow exclamation point, one red X

0x08

4 colored arrows. Green arrow pointing up. Yellow arrow pointing upwards at 45 degree angle. One yellow arrow pointing downwards at 45 degree angle. One red arrow pointing down.

0x09

4 gray arrows. Aarrow pointing up. Arrow pointing upwards at 45 degree angle. Arrow pointing downwards at 45 degree angle. Arrow pointing down.

0x0A

Four circles red to black. Bright red circle. faded red circle. Faded gray circle. Black circle

0x0B

4 sets of 4 vertical bars. Each bar in set is taller than the previous, angling upwards from left to right. First set has first bar filled in, rest are grey. Second set has first 2 bars filled in, rest are grey. Third set has first 3 bars filled in, last is gray. Fourth set has all 4 bars filled in.

0x0C

4 round traffic lights. One green, one yellow, one red, one black

0x0D

5 colored arrows. One green arrow pointing up. One yellow arrow pointing upwards at 45 degree angle. One yellow arrow pointing right. One yellow arrow pointing downwards at 45 degree angle. One red arrow pointing down.

0x0E

5 gray arrows. One arrow pointing up. One arow pointing upwards at 45 degree angle. One arrow pointing right. One arrow pointing downwards at 45 degree angle. One arrow pointing down.

0x0F

5 sets of 5 vertical bars for rating.  Each bar in set is taller than the previous, angling upwards from left to right. First set has all 5 bars filled in. Second set has first 4 bars filled in, the last is grey. Third set has first 2 bars filled in, rest are gray. Fourth set has 0 bars filled in.

0x10

5 circles divided into quarters. First circle has all 4 quarters filled in black. Second ircle has 3 quarters filled in black. Third circle has 2 quarters filled in black. Fourth circle has 1 quarter filled in black. Fifth circle has 0 quarters filled in black.

A - fIconOnly (1 bit): A bit that specifies whether only the icon will be displayed in the sheet and that the cell value will be hidden.

B - reserved2 (1 bit): MUST be zero and MUST be ignored.

C - fReverse (1 bit): A bit that specifies whether the order of the icons in the set is reversed.

reserved3 (5 bits): MUST be zero and MUST be ignored.

rgStates (variable): An array of CFMStateItem.  Each element specifies a threshold for the respective icon in the set, below which cell values are represented by the next icon in the set. The element count MUST be equal to cStates.