En este artículo se describen la sintaxis de la fórmula y el uso de la función VALORCUBO en Microsoft Excel.
Descripción
Devuelve un valor agregado del cubo.
Sintaxis
VALORCUBO(conexión; [expresión_miembro1]; [expresión_miembro2]; …)
La sintaxis de la función VALORCUBO tiene los siguientes argumentos:
-
Conexión Obligatorio. Una cadena de texto del nombre de la conexión al cubo.
-
Expresión_miembro Opcional. Una cadena de texto de una expresión multidimensional (MDX) que se evalúa como un miembro o tupla dentro del cubo. Como alternativa, expresión_miembro puede ser un conjunto definido con la función CONJUNTOCUBO. Use expresión_miembro como rebanador para definir la parte del cubo para la que se devuelve el valor agregado. Si no se especifica ninguna medida en expresión_miembro, se usa la medida predeterminada para dicho cubo.
Observaciones
-
Cuando la función VALORCUBO se evalúa, muestra temporalmente un mensaje "#OBTENIENDO_DATOS…" en la celda antes de que se recuperen todos los datos.
-
Si se usa una referencia de tabla para expresión_miembro, y dicha referencia de celda contiene una función CUBO, la expresión_miembro usa la expresión MDX para el elemento de la celda de referencia, y no el valor mostrado en dicha celda de referencia.
-
Si el nombre de la conexión no es una conexión de libro válida guardada en el libro, VALORCUBO devuelve un valor de error #¿NOMBRE? valor de error. Si el servidor de procesamiento analítico en línea (OLAP) no se está ejecutando, no está disponible o devuelve un mensaje de error, VALORCUBO devuelve un valor de error #¿NOMBRE? valor de error.
-
Si al menos un elemento dentro de la tupla no es válido, VALORCUBO devuelve un valor de error #¡VALOR! error #¡NUM!.
-
VALORCUBO devuelve un valor de error #N/A cuando:
-
La sintaxis de expresión_miembro es incorrecta.
-
El miembro especificado por expresión_miembro no existe en el cubo.
-
La tupla no es válida porque no hay intersección para los valores especificados. (Esto puede ocurrir con varios elementos de la misma jerarquía).
-
El conjunto contiene al menos un miembro con una dimensión diferente a la de los otros miembros.
-
MIEMBROKPICUBO puede devolver un valor de error # N/A, si hace referencia a un objeto de sesión, como un miembro calculado o conjunto con nombre, en una tabla dinámica cuando se comparte una conexión y esa tabla dinámica se elimina o convierte en fórmulas. (En la pestaña Opciones, en el grupo Herramientas, haga clic en Herramientas OLAP y después haga clic en Convertir en fórmulas).
-
Problema: convierte los valores nulos en cadenas de longitud cero
En Excel, si una celda no contiene datos, porque nunca se ha modificado o eliminado el contenido, la celda contiene un valor vacío. En muchos sistemas de bases de datos, un valor vacío es un valor nulo. Un valor vacío o nulo significa literalmente que no hay ningún valor. No obstante, una fórmula nunca puede devolver una cadena vacía o valor nulo. Una fórmula siempre devuelve uno de estos tres valores: un valor numérico, un valor de texto (que puede ser una cadena de longitud cero) o un valor de error como #¡NUM! o #¡VALOR!.
Si una fórmula contiene una función VALORCUBO conectada a una base de datos de procesamiento analítico en línea (OLAP) y el resultado de una consulta a esa base de datos es un valor nulo, Excel convierte este valor en una cadena de longitud cero, aun en el caso de que la fórmula devuelva un valor de número. Esto puede llevar a una situación en la que un rango de celdas contenga una combinación de valores numéricos y de valores de cadenas de longitud cero, lo cual puede afectar al resultado de otras fórmulas que hagan referencia a ese rango de celdas. Por ejemplo, si A1 y A3 contienen números, y A2 contiene una fórmula con una función VALORCUBO que devuelve una cadena de longitud cero, la siguiente fórmula devolvería un error #¡VALOR! :
=A1+A2+A3
Para evitar esto, puede probar una cadena de longitud cero usando las funciones ESTEXTO y SI para reemplazar la cadena de longitud cero por un 0 (cero), como se muestra en el ejemplo siguiente:
=SI(ESTEXTO(A1);0;A1)+SI(ESTEXTO(A2);0;A2)+SI(ESTEXTO(A3);0;A3)
Opcionalmente, puede anidar la función VALORCUBO en una condición SI que devuelve un valor 0 si la función VALORCUBO se evalúa como una cadena de longitud cero, como se muestra en el ejemplo siguiente:
=SI (VALORCUBO ("Ventas"; "[medidas].[Beneficio]";"[fecha].[2004]";"[todos los productos].[Bebidas]") =""; 0; VALORCUBO("Ventas";"[medidas].[Beneficio]";"[fecha].[2004]","[todos los productos].[Bebidas]"))
Tenga en cuenta que no es necesario probar una cadena de longitud cero con la función SUMA ya que esta función omite automáticamente las cadenas de longitud cero al calcular el valor devuelto.
Ejemplos
=VALORCUBO ("Ventas"; "[medidas]. [ Beneficio] "," [fecha]. [2004] "," [todos los productos]. [Bebidas] ")
=VALORCUBO($A$1,"[Medidas].[Beneficio]",D$12,$A23)
=VALORCUBO("Ventas",$B$7,D$12,$a23)