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

En un modelo de datos, cada columna tiene un tipo de datos asociado que especifica el tipo de datos que puede contener la columna: números enteros, números decimales, texto, datos monetarios, fechas y horas, etc. El tipo de datos también determina qué tipos de operaciones puede realizar en la columna y cuánta memoria se necesita para almacenar los valores en la columna.

Si usa el complemento Power Pivot, puede cambiar el tipo de datos de una columna. Es posible que tenga que hacer esto si una columna de fecha se importó como una cadena, pero necesita que sea otra cosa. Para obtener más información, vea Establecer el tipo de datos de una columna en Power Pivot.

En este artículo

Resumen de tipos de datos

En la tabla siguiente se enumeran los tipos de datos compatibles con un modelo de datos. Al importar datos o usar un valor en una fórmula, incluso si el origen de datos original contiene un tipo de datos diferente, los datos se convierten en uno de estos tipos de datos. Los valores resultantes de fórmulas también usan estos tipos de datos.

Tipo de datos en Excel

Tipo de datos en DAX

Descripción

Número entero

Un valor entero de 64 bits (ocho bytes) 1, 2

Números que no tienen posiciones decimales. Los enteros pueden ser números positivos o negativos, pero deben ser números enteros entre -9.223.372.036.854.775.808 (-2^63) y 9.223.372.036.854.775.807 (2^63-1).

Número decimal

Un número real de 64 bits (ocho bytes) 1, 2

Los números reales son números que pueden tener posiciones decimales. Los números reales cubren una amplia gama de valores:

Valores negativos entre -1,79E +308 y -2,23E -308

Cero

Valores positivos entre 2,23E -308 y 1,79E + 308

Sin embargo, el número de dígitos significativos está limitado a 15 dígitos decimales.

VERDADERO/FALSO

Boolean

Un valor Verdadero o Falso.

Texto

String

Una cadena de datos de caracteres Unicode. Pueden ser cadenas, números o fechas representados en un formato de texto.

La longitud máxima de la cadena es de 268.435.456 caracteres Unicode (256 mega caracteres) o 536.870.912 bytes.

Fecha

Fecha y hora

Fechas y horas en una representación de fecha y hora aceptada.

Todas las fechas válidas son posteriores al 1 de enero de 1900.

Moneda

Moneda

El tipo de datos Moneda permite valores entre -922.337.203.685.477,5808 y 922.337.203.685.477,5807 con cuatro dígitos decimales de precisión fija.

N/D

En blanco

Un espacio en blanco es un tipo de datos de DAX que representa y reemplaza valores nulos de SQL. Puede crear un espacio en blanco con la función BLANCO y probar si hay espacios en blanco con la función lógica ESBLANCO.

1 Las fórmulas de DAX no admiten tipos de datos menores que los enumerados en la tabla.

2 Si intenta importar datos que tienen valores numéricos muy grandes, puede producirse un error en la importación con el siguiente error:

Error de base de datos en memoria: La columna "<nombre de columna>" de la tabla "<nombre de tabla>" contiene un valor, "1,7976931348623157e+308", que no es compatible. La operación se ha cancelado.

Este error se produce porque Power Pivot usa ese valor para representar valores nulos. Los valores de la lista siguiente son sinónimos del valor nulo:

Valor

9223372036854775807

-9223372036854775808

1,7976931348623158e+308

2.2250738585072014e-308

Quite el valor de los datos e intente importar de nuevo.

Tipo de datos de tabla

DAX usa un tipo de datos de tabla en muchas funciones, como agregaciones y cálculos de inteligencia de tiempo. Algunas funciones requieren una referencia a una tabla; Otras funciones devuelven una tabla que puede usarse como entrada para otras funciones. En algunas funciones que requieren una tabla como entrada, puede especificar una expresión que se evalúe como una tabla; para algunas funciones, es necesaria una referencia a una tabla base. Para obtener información sobre los requisitos de funciones específicas, vea Referencia de funciones DAX.

Conversión de tipos de datos implícita y explícita en fórmulas DAX

Cada función de DAX tiene requisitos específicos en cuanto a los tipos de datos que se usan como entradas y salidas. Por ejemplo, algunas funciones requieren enteros para algunos argumentos y fechas para otros; otras funciones requieren texto o tablas.

Si los datos de la columna especificada como argumento no son compatibles con el tipo de datos requerido por la función, DAX en muchos casos devolverá un error. Sin embargo, siempre que sea posible DAX intentará convertir implícitamente los datos al tipo de datos necesario. Por ejemplo:

  • Puede escribir una fecha como cadena y DAX analizará la cadena e intentará transmitirla como uno de los formatos de fecha y hora de Windows.

  • Puede agregar VERDADERO + 1 y obtener el resultado 2, porque VERDADERO se convierte implícitamente en el número 1 y se realiza la operación 1+1.

  • Si agrega valores en dos columnas y un valor se representa como texto ("12") y el otro como un número (12), DAX convierte implícitamente la cadena en un número y, a continuación, realiza la adición de un resultado numérico. La siguiente expresión devuelve 44: = "22" + 22

  • Si intenta concatenar dos números, Excel los presentará como cadenas y, a continuación, los concatenará. La siguiente expresión devuelve "1234": = 12 & 34

En la tabla siguiente se resumen las conversiones implícitas de tipos de datos que se realizan en las fórmulas. Excel realiza conversiones implícitas siempre que sea posible, según lo requiera la operación especificada.

Tabla de conversiones de datos implícitas

El tipo de conversión que se realiza viene determinado por el operador, que convierte los valores que requiere antes de realizar la operación solicitada. Estas tablas enumeran los operadores e indican la conversión que se realiza en cada tipo de datos de la columna cuando está emparejado con el tipo de datos en la fila de intersección.

Nota: Los tipos de datos de texto no se incluyen en estas tablas. Cuando se representa un número como en un formato de texto, en algunos casos Power Pivot intentará determinar el tipo de número y lo representará como un número.

Adición (+)

Operador (+)

INTEGER

CURRENCY

REAL

Fecha y hora

INTEGER

INTEGER

CURRENCY

REAL

Fecha y hora

CURRENCY

CURRENCY

CURRENCY

REAL

Fecha y hora

REAL

REAL

REAL

REAL

Fecha y hora

Fecha y hora

Fecha y hora

Fecha y hora

Fecha y hora

Fecha y hora

Por ejemplo, si se usa un número real en una operación de suma combinada con datos de moneda, ambos valores se convierten en REAL y el resultado se devuelve como REAL.

Resta (-)

En la tabla siguiente, el encabezado de fila es el minuend (lado izquierdo) y el encabezado de columna es el subtranque (lado derecho).

Operador (-)

INTEGER

CURRENCY

REAL

Fecha y hora

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Fecha y hora

Fecha y hora

Fecha y hora

Fecha y hora

Fecha y hora

Por ejemplo, si una fecha se usa en una operación de resta con cualquier otro tipo de datos, ambos valores se convierten en fechas y el valor devuelto también es una fecha.

Nota: Los modelos de datos también admiten el operador unario, - (negativo), pero este operador no cambia el tipo de datos del operando.

Multiplicación (*)

Operador (*)

INTEGER

CURRENCY

REAL

Fecha y hora

INTEGER

INTEGER

CURRENCY

REAL

INTEGER

CURRENCY

CURRENCY

REAL

CURRENCY

CURRENCY

REAL

REAL

CURRENCY

REAL

REAL

Por ejemplo, si se combina un entero con un número real en una operación de multiplicación, ambos números se convierten en números reales y el valor devuelto también es REAL.

División (/)

En la tabla siguiente, el encabezado de fila es el numerador y el encabezado de columna es el denominador.

Operador (/)

(Fila/Columna)

INTEGER

CURRENCY

REAL

Fecha y hora

INTEGER

REAL

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

REAL

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

Fecha y hora

REAL

REAL

REAL

REAL

Por ejemplo, si se combina un entero con un valor de moneda en una operación de división, ambos valores se convierten en números reales y el resultado también es un número real.

Operadores de comparación

En las expresiones de comparación, los valores booleanos se consideran mayores que los valores de cadena y los valores de cadena se consideran mayores que los valores numéricos o de fecha y hora; se considera que los números y los valores de fecha y hora tienen la misma jerarquía. No se realizan conversiones implícitas para valores booleanos o de cadena; EN BLANCO o un valor en blanco se convierte en 0/"/false según el tipo de datos del otro valor comparado.

Las siguientes expresiones de DAX ilustran este comportamiento:

=SI(FALSO()>"verdadero";"La expresión es verdadera"; "La expresión es falsa"), devuelve "La expresión es verdadera"

=SI("12">12,"Expresión es verdadera", "Expresión es falsa"), devuelve "La expresión es verdadera".

=SI("12"=12,"La expresión es verdadera", "La expresión es falsa"), devuelve "La expresión es falsa"

Las conversiones se realizan implícitamente para tipos numéricos o de fecha y hora, como se describe en la tabla siguiente:

Operador de comparación

INTEGER

CURRENCY

REAL

Fecha y hora

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Fecha y hora

REAL

REAL

REAL

Fecha y hora

Principio de página

Control de espacios en blanco, cadenas vacías y valores cero

En DAX, un valor nulo, en blanco, una celda vacía o un valor que falta están representados por el mismo tipo de valor nuevo, un BLANK. También puede generar espacios en blanco con la función BLANCO o probar si hay espacios en blanco con la función ESBLANCO.

El modo en que se controlan los espacios en blanco en las operaciones, como la suma o la concatenación, depende de la función individual. En la tabla siguiente se resumen las diferencias entre las fórmulas de DAX y Microsoft Excel, en la forma en que se administran los espacios en blanco.

Expression

DAX

Excel

EN BLANCO + EN BLANCO

ESPACIO EN BLANCO

0 (cero)

EN BLANCO +5

5

5

EN BLANCO * 5

ESPACIO EN BLANCO

0 (cero)

5/EN BLANCO

Infinity

Error

0/EN BLANCO

Nan

Error

EN BLANCO O EN BLANCO

ESPACIO EN BLANCO

Error

FALSO O EN BLANCO

FALSO

FALSO

FALSO Y EN BLANCO

FALSO

FALSO

VERDADERO O EN BLANCO

TRUE

TRUE

VERDADERO Y EN BLANCO

FALSO

VERDADERO

EN BLANCO O EN BLANCO

ESPACIO EN BLANCO

Error

EN BLANCO Y EN BLANCO

ESPACIO EN BLANCO

Error

Para obtener más información sobre cómo una función o un operador determinado controla los espacios en blanco, consulte los temas individuales de cada función de DAX, en la sección Referencia de funciones DAX.

Principio de página

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.