Compartilhar via


Tipos de dados usados pelo Excel

Aplica-se a: Excel 2013 | Office 2013 | Visual Studio

O Microsoft Excel troca v�rios tipos de ANSI C/C++ e tamb�m algumas estruturas de dados espec�ficas do Excel. Eles s�o mencionados aqui para fornecer um contexto para outras se��es e s�o abordados detalhadamente no t�pico xlfRegister (Form 1).

Tipos de ANSI C/C++

Números

Todas as versões do Excel:

  • duplo de 8 bytes

  • [assinado] curto [int] – usado para valores boolianos e também inteiros

  • unsigned short [int]

  • [signed long] int

Cadeias de caracteres

Todas as versões do Excel:

  • [signed] char * – cadeias de caracteres de bytes terminada por caractere nulo de até 255 caracteres

  • unsigned char * – cadeias de caracteres de bytes contada por tamanho de até 255 caracteres

Iniciando no Excel 2007:

  • unsigned short * – cadeias de caracteres Unicode de até 32.767 caracteres, que podem ser terminadas por caractere nulo ou contadas por tamanho

Todos os números de planilha no Excel são armazenados como duplicatas para que ele não seja necessário (e, na verdade, introduz uma pequena sobrecarga de conversão) para declarar funções de suplemento como a troca de tipos de inteiro com o Excel.

Onde quer que você esteja usando tipos de inteiro, o Excel verifica se as entradas estão dentro dos limites do tipo e elas falharão com #NUM! se estiver fora desses limites. A exceção é quando você está registrando uma função para usar um argumento booliano , implementado usando int curto. Nesse caso, qualquer entrada não zero é convertida em 1 e zero é passado diretamente.

Estruturas de dados específicas do Excel

Todas as versões do Excel:

  • FP – uma estrutura de matriz de ponto flutuante bidimensional que dá suporte a até 65.356 linhas pelas colunas de número máximo compatíveis na versão fornecida do Excel.

  • XLOPER – uma estrutura de dados de vários tipos que pode representar todos os tipos de dados de planilha (incluindo erros), inteiros, referências de intervalo, tipos de controle de fluxo de planilha de macro XLM e um tipo de dados de armazenamento binário interno.

    Observação

    Cadeias de caracteres são representadas como cadeias de caracteres de bytes contada por tamanho de até 255 caracteres.

Iniciando no Excel 2007:

  • FP12 – uma estrutura de matriz de ponto flutuante bidimensional que dá suporte a todas as linhas e colunas a partir do Excel 2007.

  • XLOPER12 – uma estrutura de dados de vários tipos que pode representar todos os tipos de dados de planilha (incluindo erros), inteiros, referências de intervalo, tipos de controle de fluxo de planilha de macro XLM e um tipo de dados de armazenamento binário interno.

    Observação

    Cadeias de caracteres são representadas como cadeias de caracteres Unicode contadas por tamanho de até 32.767 caracteres.

Códigos de tipo de dados de registro

As fun��es XLL s�o registradas com a fun��o da API C do xlfRegister, que usa como terceiro argumento uma cadeia de caracteres de letras que codifica os tipos de retorno e argumento. Essa cadeia de caracteres tamb�m cont�m as informa��es que indicam ao Excel se a fun��o � vol�til, se � thread-safe (iniciando em Excel�2007), se � equivalente � folha de macro e se ela retorna o resultado modificando um argumento no local.

A tabela a seguir � reproduzida e abordada mais detalhadamente no t�pico xlfRegister (Form 1). Ela � reproduzida aqui com a finalidade de fornecer um contexto para o restante desta se��o. Por exemplo, uma fun��o que usa uma cadeia de caracteres Unicode contada por tamanho (iniciando em Excel�2007) poderia ser descrita como usando um argumento do tipo C%.

Tipo de dados Passar por valor Passar por ref (ponteiro) Comentários
Boolean
A
L
curto (0= false ou 1= verdadeiro)
double
B
E
char *
C, F
Cadeia de caracteres de bytes ASCII terminada por caractere nulo
unsigned char *
D, G
Cadeia de caracteres de bytes ASCII contada por tamanho
short não assinado * (começando no Excel 2007)
C%, F%
Cadeia de caracteres largos Unicode terminada por caractere nulo
short não assinado * (começando no Excel 2007)
D%, G%
Cadeia de caracteres largos Unicode contado por tamanho
unsigned short [int]
H
WORD
[signed] short [int]
I
M
16 bits
[signed long] int
J
N
32 bits
Array
O
Passados como três argumentos por referência:
1. int curto *linhas
2. int curto *colunas
3. double *array
Matriz
(iniciando em Excel 2007)
O%
Passados como três argumentos por referência:
1. int *linhas
2. int *columns
3. double *array
FP
K
Estrutura de matriz do ponto flutuante
FP12
(iniciando em Excel 2007)
K%
Estrutura de matriz do ponto flutuante de grade grande
XLOPER
P
Valores e matrizes de planilha de tipo variável
R
Referências de valores, matrizes e intervalos
XLOPER12
(iniciando em Excel 2007)
I
Valores e matrizes de planilha de tipo variável
U
Referências de valores, matrizes e intervalos

Os tipos C%, F%, D%, G%, K%, O%, Q e U eram todos novos no Microsoft Office Excel 2007 e n�o t�m suporte em vers�es anteriores. Os tipos de cadeia de caracteres F, F%, G e G% s�o usados para os argumentos que s�o modificados no local. Quando os argumentos XLOPER ou XLOPER12 s�o registrados como tipos P ou Q, respectivamente, o Excel converte as refer�ncias de c�lula �nica para valores simples e refer�ncias de c�lula m�ltipla ao prepar�-las.

Os tipos P e Q chegam sempre na função como um dos seguintes tipos: xltypeNum, xltypeStr, xltypeBool, xltypeErr, xltypeMulti, xltypeMissing ou xltypeNil, exceto xltypeRef ou xltypeSRef, visto que estes são sempre desreferenciados.

O tipo O, que, na verdade, s�o tr�s argumentos na pilha, foi introduzido para compatibilidade com DLLs Fortran em que os argumentos s�o passados por refer�ncia. Ele n�o pode ser usado para retornar um valor, exceto se for usado por meio da declara��o do argumento como um valor retornado a ser modificado no local e com a coloca��o dos resultados nos valores referenciados. O tipo O% estende os tipos O no Excel�2007 para que ele possa acessar matrizes que abrangem �reas maiores do que a grade do Office Excel 2003.

Confira também