Applies ToExcel para Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

Num Modelo de Dados, cada coluna tem um tipo de dados associado que especifica o tipo de dados que a coluna pode conter: números inteiros, números decimais, texto, dados monetários, datas e horas, etc. O tipo de dados também determina os tipos de operações que pode fazer na coluna e a quantidade de memória necessária para armazenar os valores na coluna.

Se estiver a utilizar o suplemento Power Pivot, pode alterar o tipo de dados de uma coluna. Poderá ter de o fazer se uma coluna de data tiver sido importada como uma cadeia, mas precisar que seja outra coisa. Para obter mais informações, consulte Definir o tipo de dados de uma coluna no Power Pivot.

Neste artigo

Resumo dos tipos de dados

A tabela seguinte lista os tipos de dados suportados num Modelo de Dados. Quando importa dados ou utiliza um valor numa fórmula, mesmo que a origem de dados original contenha um tipo de dados diferente, os dados são convertidos num destes tipos de dados. Os valores resultantes de fórmulas também utilizam estes tipos de dados.

Tipo de dados no Excel

Tipo de dados no DAX

Descrição

Número Inteiro

Um valor inteiro de 64 bits (oito bytes) 1, 2

Números que não têm casas decimais. Os números inteiros podem ser números positivos ou negativos, mas têm de ser números inteiros entre -9.223.372.036.854.775.808 (-2^63) e 9.223.372.036.854.775.807 (2^63-1).

Número Decimal

Um número real de 64 bits (oito bytes) 1, 2

Os números reais são números que podem ter casas decimais. Os números reais abrangem uma vasta gama de valores:

Valores negativos de -1,79E +308 a -2,23E -308

Zero

Valores positivos de 2,23E -308 a 1,79E + 308

No entanto, o número de dígitos significativos está limitado a 15 dígitos decimais.

VERDADEIRO/FALSO

booleano

Um valor Verdadeiro ou Falso.

Text

Cadeia

Uma cadeia de dados de carateres Unicode. Podem ser cadeias, números ou datas representadas num formato de texto.

O comprimento máximo da cadeia é de 268.435.456 carateres Unicode (256 carateres mega) ou 536.870.912 bytes.

Data

Data/hora

Datas e horas numa representação de data/hora aceite.

As datas válidas são todas datas após 1 de janeiro de 1900.

Moeda

Moeda

O tipo de dados moeda permite valores entre -922.337.203.685.477.5808 a 922.337.203.685.477.5807 com quatro dígitos decimais de precisão fixa.

N/D

Em branco

Um em branco é um tipo de dados no DAX que representa e substitui os nulos do SQL. Pode criar um espaço em branco com a função BLANK e testar espaços em branco com a função lógica ISBLANK.

1 As fórmulas DAX não suportam tipos de dados mais pequenos do que os listados na tabela.

2 Se tentar importar dados com valores numéricos muito grandes, a importação poderá falhar com o seguinte erro:

Erro na base de dados dentro da memória: a coluna "nome da coluna <>" da tabela "nome da tabela <>" contém um valor, "1,7976931348623157e+308", que não é suportado. A operação foi cancelada.

Este erro ocorre porque Power Pivot utiliza esse valor para representar valores nulos. Os valores na lista seguinte são sinónimos para o valor nulo:

Value

9223372036854775807

-9223372036854775808

1,7976931348623158e+308

2.2250738585072014e-308

Remova o valor dos seus dados e tente importar novamente.

Tipo de Dados da Tabela

O DAX utiliza um tipo de dados de tabela em muitas funções, como agregações e cálculos de análise de tempo. Algumas funções requerem uma referência a uma tabela; outras funções devolvem uma tabela que pode ser utilizada como entrada para outras funções. Em algumas funções que requerem uma tabela como entrada, pode especificar uma expressão que é avaliada como uma tabela; para algumas funções, é necessária uma referência a uma tabela base. Para obter informações sobre os requisitos de funções específicas, veja Referência da Função DAX.

Conversão implícita e explícita do tipo de dados em fórmulas DAX

Cada função DAX tem requisitos específicos quanto aos tipos de dados que são utilizados como entradas e saídas. Por exemplo, algumas funções requerem números inteiros para alguns argumentos e datas para outras; outras funções requerem texto ou tabelas.

Se os dados na coluna que especificar como argumento forem incompatíveis com o tipo de dados exigido pela função, o DAX irá, em muitos casos, devolver um erro. No entanto, sempre que possível, o DAX tentará converter implicitamente os dados para o tipo de dados necessário. Por exemplo:

  • Pode escrever uma data como uma cadeia e o DAX analisará a cadeia e tentará lançá-la como um dos formatos de data e hora do Windows.

  • Pode adicionar VERDADEIRO + 1 e obter o resultado 2, porque VERDADEIRO é implicitamente convertido para o número 1 e a operação 1+1 é executada.

  • Se adicionar valores em duas colunas e um valor for representado como texto ("12") e o outro como um número (12), o DAX converte implicitamente a cadeia num número e, em seguida, faz a adição para um resultado numérico. A expressão seguinte devolve 44: = "22" + 22

  • Se tentar concatenar dois números, o Excel irá apresentá-los como cadeias e, em seguida, concatenar. A expressão seguinte devolve "1234": = 12 & 34

A tabela seguinte resume as conversões implícitas de tipos de dados que são executadas em fórmulas. O Excel efetua conversões implícitas sempre que possível, conforme exigido pela operação especificada.

Tabela de Conversões de Dados Implícitas

O tipo de conversão que é executada é determinado pelo operador, que lança os valores necessários antes de executar a operação pedida. Estas tabelas listam os operadores e indicam a conversão que é efetuada em cada tipo de dados na coluna quando é emparelhada com o tipo de dados na linha de intersecção.

Nota: Os tipos de dados de texto não estão incluídos nestas tabelas. Quando um número é representado como num formato de texto, em alguns casos, Power Pivot tentará determinar o tipo de número e representá-lo como um número.

Adição (+)

Operador (+)

INTEGER

CURRENCY

REAL

Data/hora

INTEGER

INTEGER

CURRENCY

REAL

Data/hora

CURRENCY

CURRENCY

CURRENCY

REAL

Data/hora

REAL

REAL

REAL

REAL

Data/hora

Data/hora

Data/hora

Data/hora

Data/hora

Data/hora

Por exemplo, se for utilizado um número real numa operação adicional em combinação com dados de moeda, ambos os valores são convertidos em REAL e o resultado é devolvido como REAL.

Subtração (-)

Na tabela seguinte, o cabeçalho da linha é o minuend (lado esquerdo) e o cabeçalho da coluna é o subtraído (lado direito).

Operador (-)

INTEGER

CURRENCY

REAL

Data/hora

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Data/hora

Data/hora

Data/hora

Data/hora

Data/hora

Por exemplo, se uma data for utilizada numa operação de subtração com qualquer outro tipo de dados, ambos os valores são convertidos em datas e o valor devolvido também é uma data.

Nota: Os modelos de dados também suportam o operador unário , ( negativo), mas este operador não altera o tipo de dados do operando.

Multiplicação (*)

Operador (*)

INTEGER

CURRENCY

REAL

Data/hora

INTEGER

INTEGER

CURRENCY

REAL

INTEGER

CURRENCY

CURRENCY

REAL

CURRENCY

CURRENCY

REAL

REAL

CURRENCY

REAL

REAL

Por exemplo, se um número inteiro for combinado com um número real numa operação de multiplicação, ambos os números são convertidos em números reais e o valor devolvido também é REAL.

Divisão (/)

Na tabela seguinte, o cabeçalho da linha é o numerador e o cabeçalho da coluna é o denominador.

Operador (/)

(Linha/Coluna)

INTEGER

CURRENCY

REAL

Data/hora

INTEGER

REAL

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

REAL

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

Data/hora

REAL

REAL

REAL

REAL

Por exemplo, se um número inteiro for combinado com um valor de moeda numa operação de divisão, ambos os valores são convertidos em números reais e o resultado também é um número real.

Operadores de comparação

Em expressões de comparação, os valores booleanos são considerados maiores do que os valores de cadeia e os valores de cadeia são considerados maiores do que os valores numéricos ou de data/hora; Os números e os valores de data/hora são considerados como estando na mesma ordem. Não são efetuadas conversões implícitas para valores booleanos ou de cadeia; BLANK ou um valor em branco é convertido em 0/""/false consoante o tipo de dados do outro valor comparado.

As seguintes expressões DAX ilustram este comportamento:

=SE(FALSO()>"verdadeiro","Expressão é verdadeira", "Expressão é falsa"), devolve "Expressão é verdadeira"

=SE("12">12,"Expressão é verdadeira", "Expressão é falsa"), devolve "Expressão é verdadeira".

=SE("12"=12;"A expressão é verdadeira", "Expressão é falsa"), devolve "Expressão é falsa"

As conversões são executadas implicitamente para tipos numéricos ou de data/hora, conforme descrito na tabela seguinte:

Operador de Comparação

INTEGER

CURRENCY

REAL

Data/hora

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Data/hora

REAL

REAL

REAL

Data/hora

Início da Página

Processar espaços em branco, cadeias vazias e valores zero

No DAX, um valor nulo, em branco, uma célula vazia ou um valor em falta são todos representados pelo mesmo novo tipo de valor, um BLANK. Também pode gerar espaços em branco com a função BLANK ou testar espaços em branco com a função ISBLANK.

A forma como os espaços em branco são processados em operações, como adição ou concatenação, depende da função individual. A tabela seguinte resume as diferenças entre as fórmulas DAX e Microsoft Excel, da forma como os espaços em branco são processados.

Expressão

DAX

Excel

BLANK + BLANK

EM BRANCO

0 (zero)

EM BRANCO +5

5

5

EM BRANCO * 5

EM BRANCO

0 (zero)

5/EM BRANCO

Infinito

Erro

0/EM BRANCO

NaN

Erro

EM BRANCO/EM BRANCO

EM BRANCO

Erro

FALSO OU EM BRANCO

FALSE

FALSE

FALSO E EM BRANCO

FALSE

FALSE

VERDADEIRO OU EM BRANCO

TRUE

TRUE

VERDADEIRO E EM BRANCO

FALSO

VERDADEIRO

EM BRANCO OU EM BRANCO

EM BRANCO

Erro

EM BRANCO E EM BRANCO

EM BRANCO

Erro

Para obter detalhes sobre como uma função ou operador específico processa espaços em branco, veja os tópicos individuais para cada função DAX, na secção Referência de Funções DAX.

Início da Página

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.