2.4.346 BrtCustomFilter14

The BrtCustomFilter record specifies custom AutoFilter criteria.


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

vts

grbitSgn

union

...

...

vtsStringXls (variable)

...

vts (1 byte): An unsigned integer that specifies the type of data used in this record. This value MUST be a value from the following table.

Value

Meaning

0x04

Filter by a real number.

0x06

Filter by a string.

0x08

Filter by a Boolean.

0x0C

Filter by blanks values.

0x0E

Filter by values that are not blank.

grbitSgn (1 byte): An unsigned integer that specifies the comparison operation to be performed. This value MUST be a value from the following table.

Value

Meaning

0x01

Less than.

0x02

Equal to.

0x03

Less than or equal to.

0x04

Greater than.

0x05

Not equal to.

0x06

Greater than or equal to.

union (8 bytes): A union that specifies the Boolean or numeric value of the comparison criteria to be used for this AutoFilter. The data type of the content of the union is dependent on vts, and is defined in the following table.

Value of vts

Type and meaning of union

0x00000004

An Xnum (section 2.5.172) that specifies a numeric value.

0x00000008

A 1-byte Boolean (section 2.5.98.3) that specifies a Boolean value, followed by a 7-byte field that is undefined and MUST be ignored.

0x00000006

0x0000000C

0X0000000E

Unused. This union is undefined and MUST be ignored.

vtsStringXls (variable): An XLWideString (section 2.5.169) that specifies the string-based value of the comparison criteria to be used for this AutoFilter. For the purposes of comparisons, the characters "?" and "*" are used as wildcards. A "?" refers to any single character, and a "*" refers to any number of characters. This field MUST be present if and only if vts is equal to 0x06.