2.4.105 ExternName

The ExternName record specifies an external defined name, a User Defined Function (UDF) reference on a XLL or COM add-in, a DDE data item or an OLE data item, depending on the value of the virtPath field in the preceding SupBook record. If the cch field in the preceding SupBook record is 0x3A01, then this record specifies a UDF reference. Otherwise if the virtPath field in the preceding SupBook record conforms to the ole-link rule specified in the VirtualPath ABNF, then this record specifies a DDE data item or an OLE data item. Otherwise, this record specifies an external defined name.


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

A

B

C

D

E

cf

F

body (variable)

...

A - fBuiltIn (1 bit): A bit that specifies whether this record specifies a user-defined or built-in external defined name. The value MUST be 0 if this record specifies a DDE data item, an OLE data item or a UDF reference on a XLL or COM add-in. Otherwise, MUST be one of the following:

Value

Meaning

0

The external defined name is user-defined.

1

The external defined name is built-in.

B - fWantAdvise (1 bit): A bit that specifies whether this record is an automatic DDE data item or OLE data item. MUST be one of the following:

Value

Meaning

0

The record is an external defined name, a manual DDE data item, a manual OLE data item or a UDF reference on a XLL or COM add-in.

1

The record is either an automatic DDE data item or an automatic OLE data item.

C - fWantPict (1 bit): A bit that specifies whether this record's linked data uses a picture format. The value MUST be 0 if this record specifies an external defined name or a UDF reference on a XLL or COM add-in.

D - fOle (1 bit): A bit that, together with the value of fOleLink, specifies the structure of body. The value MUST be 0 if this record is an external defined name, an OLE data item or a UDF reference on a XLL or COM add-in. If this value is 1, fOleLink MUST be 0.

E - fOleLink (1 bit):  A bit that, together with the value of fOle, specifies the structure of body. The value MUST be 0 if this record is an external defined name or a UDF reference on a XLL or COM add-in. If this value is 1, fOle MUST be 0 and this record specifies an OLE data item.

cf (10 bits): A signed integer that specifies the type of the cached clipboard format for a DDE data item or an OLE data item. The value MUST be 0 if this record is an external defined name or a UDF reference on a XLL or COM add-in. The value MUST be one of the values in the following table:

Value

Meaning

-1

There is no cached clipboard format.

0

This record is an external defined name or the cached clipboard format is text. For the text format, each line ends with a carriage return/linefeed (CR-LF) combination. A null character signals the end of the data.

2

Cached clipboard format is Enhanced Metafile.

5

Cached clipboard format is CSV (comma-delimited).

6

Cached clipboard format is Microsoft Symbolic Link (SYLK). SYLK is a format used to exchange data between applications.

7

Cached clipboard format is rich text (RTF).

8

Cached clipboard format is BIFF8.

9

Cached clipboard format is Bitmap.

16

Cached clipboard format is a table created using a specific application<82>.

20

Cached clipboard format is BIFF3.

30

Cached clipboard format is BIFF4.

36

Cached clipboard format is Metafile Picture Format.

44

Cached clipboard format is Unicode text. Each line ends with a carriage return/linefeed (CR-LF) combination. A null character signals the end of the data.

63

Cached clipboard format is BIFF12.

F - fIcon (1 bit): A bit that specifies whether linked data is displayed as an icon. The value MUST be 0 if this record is an external defined name, a DDE data item or a UDF reference on a XLL or COM add-in.

body (variable):  A variable type field whose type and meaning is dictated by the values of fOle and fOleLink, as specified in the following table:

cch in the preceding SupBook

DDE data item or OLE data item

fOle

fOleLink

Meaning

!= 0x3A01

no

0

0

body is an ExternDocName that specifies an external defined name.

!= 0x3A01

yes

0

0

body is an ExternOleDdeLink that specifies an OLE data item or DDE data item.

!= 0x3A01

yes

0

1

!= 0x3A01

yes

1

0

body is an ExternDdeLinkNoOper that specifies a DDE data item.

0x3A01

no

0

0

Body is an AddinUdf that specifies a UDF reference on a XLL or COM add-in.