Типы данных, используемые Excel (машинный перевод)

Дата последнего изменения: 13 марта 2009 г.

Применимо к: Excel 2010 | Office 2010 | VBA | Visual Studio

В этой статье
Типы ANSI C/C++
Excel конкретных структур данных
Регистрация кодов типов данных

Важно!

Данная статья переведена с помощью машинного перевода, см. Отказ от ответственности. Используйте английский вариант этой статьи, который находится здесь, в качестве справочного материала.

Microsoft Excel заменяет несколько типов ANSI C/C++, а также некоторые специфические для Excel структуры данных. Здесь об этом упоминается, чтобы предоставить контекст для других разделов, и эти данные подробно рассматриваются в статье xlfRegister (форма 1) (машинный перевод).

Типы ANSI C/C++

Номера

Все версии Excel:

  • 8-байтовое значение типа double

  • короткий [signed] [int] – используется для значения Boolean, а также целые числа

  • unsigned short [int]

  • [подписан долго] int

Strings

Все версии Excel:

  • [signed] char * – строки нулем байтов длиной до 255 символов

  • без знака типа char * – строки байтов со счетчиком длины не более 255 символов

Начиная с Excel 2007:

  • неподписанные короткий * – до 32 767 символов, которые могут быть нулем или со счетчиком длины строки в Юникоде

Всех чисел на листе в Excel хранятся в виде значений типа Double, таким образом, нет необходимости (и на самом деле представляет небольшой преобразования издержки) для объявления функции надстройки, как обмен целочисленными типами с Excel.

Там, где используются целочисленные типы, Microsoft Excel проверяет входные данные находятся в пределах типа, что они не с #NUM! Если вне их. Исключением является ситуация, при регистрации функции принимают аргумент Boolean, реализуемых с помощью коротких int. В этом случае никаких ненулевое значение преобразуется в 1 и прямой передается нулевое значение.

Excel конкретных структур данных

Все версии Excel:

  • FP – структуры двумерного массива с плавающей запятой, поддерживающий до не превышающие 65 356 строк, максимальное число столбцов, поддерживаются в данной версии Excel.

  • XLOPER – структура многотипное данных, которая может представлять всех типов данных на листе (включая ошибки), целых чисел, ссылок на диапазоны ячеек, типов XLM макрос лист потока управления и типу внутреннего хранилища двоичных данных.

    Примечание

    Строки представлены в виде строки байтов со счетчиком длины длиной до 255 знаков.

Начиная с Excel 2007:

  • FP12 – поддержка всех строк и столбцов, начиная с Excel 2007 структуре двумерного массива с плавающей запятой.

  • XLOPER12 – структура многотипное данных, которая может представлять всех типов данных на листе (включая ошибки), целых чисел, ссылок на диапазоны ячеек, типов XLM макрос лист потока управления и типу внутреннего хранилища двоичных данных.

    Примечание

    Строки представлены как строки Юникода со счетчиком длины до 32 767 символов.

Регистрация кодов типов данных

Функции XLL регистрируются с помощью xlfRegister функции C API, который принимает в качестве третьего аргумента строку символов, кодирование возвращаемое значение и аргументов типа. Эта строка также содержит информацию, предписывает ли volatile функция является поточно-(начиная с версии Excel 2007), эквивалентные лист макросов — оно возвращает результат, изменяя аргумента на месте.

В следующей таблице воспроизведена и более подробно в разделе xlfRegister (форма 1) (машинный перевод). Будет воспроизведена на предоставляют контекст для остальной части этого раздела. Например функции, принимающей со счетчиком длины строки Юникода (начиная с Excel 2007) следует рассматривать как принимающий тип аргумента C %.

Тип

Передача по значению

Передача по ссылке (указатель)

Комментарии

Boolean

А

L

короткий (0 = false или 1 = true)

двойной

Б

E

char *

C, F

ASCII байтов завершающим нулем.

без знака типа char *

D, G

Длина-учитывается строка байтов в кодировке ASCII.

неподписанные короткий *
(начиная с Excel 2007)

C %, F %

Завершающим нулем широкий строка знаков Юникода.

неподписанные короткий *
(начиная с Excel 2007)

% D, G %

Со счетчиком длины широкий строка знаков Юникода.

unsigned short [int]

H

Word

короткий [signed] [int]

I

M

16-разрядное

[подписан долго] int

J

Н

32-разр

Массив

O

По ссылке, передаются как три аргумента:

  1. Short int * строк

  2. Short int * столбцов

  3. двойной * массива

Массив

(начиная с Excel 2007)

O %

По ссылке, передаются как три аргумента:

  1. int * строк

  2. int * столбцов

  3. двойной * массива

FP

K

Структура массива с плавающей запятой.

FP12

(начиная с Excel 2007)

K %

Структура массива с плавающей запятой Крупная клетка.

XLOPER

P

Значения переменной типа листа и массивы.

R

Значения, массивы и ссылок на диапазоны ячеек.

XLOPER12

(начиная с Excel 2007)

Q

Значения переменной типа листа и массивы.

U

Значения, массивы и ссылок на диапазоны ячеек.

Типы C%, F%, D%, G%, K%, O%, Q и U были все новые в Microsoft Office Excel 2007 и не поддерживаются в более ранних версиях. Строковые типы, F, F%, G и G% are, используемых для аргументов, которые являются изменения на месте. При XLOPER или XLOPER12 аргументов регистрируются как типы P и Q соответственно, Excel преобразует ссылками на ячейки в простые значения и несколькими ячейками ссылки на массивы, при подготовке их.

типы P и Q всегда попадают в функцию как один из следующих типов: xltypeNum, xltypeStr, xltypeBool, xltypeErr, xltypeMulti, xltypeMissing, или xltypeNil, но не xltypeRef или xltypeSRef, потому что они всегда являются сбросил ссылку.

O тип, который является действительно три аргумента в стеке, была введена в целях совместимости с динамическими библиотеками Fortran где аргументы передаются по ссылке. Не может использоваться для возврата значения за исключением объявление аргумента как возвращаемое значение изменить на месте и поместить результаты в значениях, на которую указывает ссылка. Тип O% расширяет тип O в Excel 2007, могли обращаться к массивы, которые охватывают области, больше, чем сетка Office Excel 2003.

Примечание

Отказ от ответственности относительно машинного перевода. Данная статья была переведена с помощью компьютерной системы без участия человека. Microsoft предлагает эти машинные переводы, чтобы помочь пользователям, которые не знают английского языка, ознакомиться с материалами о продуктах, услугах и технологиях Microsoft. Поскольку статья была переведена с использованием машинного перевода, она может содержать лексические,синтаксические и грамматические ошибки.

См. также

Ссылка

xlfRegister (форма 1) (машинный перевод)

Концепции

Принципы программирования Excel (машинный перевод)

Справочное руководство по функциям интерфейса API пакета SDK XLL для Excel 2010 (машинный перевод)