XLTABLE Clipboard Format Documentation Available

Last reviewed: July 23, 1997
Article ID: Q75631
3.00 3.10 WINDOWS kbprg

The information in this article applies to:

  • Microsoft Windows Software Development Kit (SDK) for Windows versions 3.1 and 3.0

SUMMARY

XLTABLE is a new clipboard format developed for use in dynamic-data exchange (DDE) conversations with Microsoft Excel.

Using this format instead of BIFF (the Binary Interchange File Format) results in faster conversations. Code to read and write this format is also easier to implement. The format does not introduce translation problems that can occur when putting text on the clipboard.

The "Microsoft Excel Software Development Kit," part number 065-000- 020, describes all the Excel file formats. In the United States, this document is available for $20.00 through the Microsoft Consultant Relations Program by calling (800) 227-4679. Outside the United States, contact the Microsoft subsidiary that supports your country for pricing and availability information.

MORE INFORMATION

The following information documents the XLTABLE data format:

FAST FILE FORMAT

The Fast DDE Table data consists of multiple simple_datablocks, one after the other:

   Fast_DDE_Table = <simple_datablock> <simple_datablock> ...
       <simple_datablock>

A simple_datablock has three parts:

    WORD tdt;       // The table datatype
    WORD cb;        // The size (in bytes) of the data part
    BYTE data[];    // There are cb bytes in this part

Description of the Table Datatypes:

tdt         Value    Meaning
---         -----    -------

tdtTable    0x0010   Gives the size of the table. The cb is 4.
                     The data (4 bytes) has two words: the first
                     word is the number of rows, the second word
                     is the number of columns.

tdtFloat    0x0001   The data contains floating point values in IEEE
                     real format. The size of each entry is 8 bytes.

tdtString   0x0002   The data contains strings in "st" format. In this
                     format, the first byte gives the length of the
                     string, and the following bytes make up the
                     string. The string is not null-terminated.

tdtBool     0x0003   Boolean values: 1 = TRUE, 0 = FALSE
                     Each entry is 2 bytes.

tdtError    0x0004   Error values for the cell:

                         0  = #NULL!
                         7  = #DIV/0!
                         15 = #VALUE!
                         23 = #REF!
                         29 = #NAME?
                         36 = #NUM!
                         42 = #N/A

                     Each entry is 2 bytes.

tdtBlank    0x0005   The cb is 2. The data (2 bytes) has one word.
                     The value of the word is the number of blank cells.

tdtType     0x0080   Not used. Gives the type of the cell. Each entry
                     is 2 bytes.

tdtFormat   0x0081   Not used. Gives the format of the cell (0-
                     relative index into the format table as shown in
                     the Format Number dialog box). Each entry is 2
                     bytes.

Order of the cells: The first simple_datablock must be of type tdtTable. This record provides the number of rows and columns. This is followed by rows*cols cells represented by the subsequent simple_datablocks. The cells are represented row-wise, (all cells of the first row are listed first, then all cells of the second row, and so on).

For example, the Fast DDE Table for a selection consisting of three cells in a row, containing the strings "East", "West", and "North", respectively, will resemble the following:

   10 00 04 00 01 00 03 00    - tdtTable, 4, 1, 3
   02 00 10 00                - tdtString, 16
      04 45 61 73 74          - 4, East
      04 57 65 73 74          - 4, West
      05 4e 6f 72 74 68       - 5, North


Additional reference words: 3.00 3.10 DDE clipboard
KBCategory: kbprg
KBSubcategory: UsrClp
Keywords : kb16bitonly


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: July 23, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.