La función CUBEVALUE

Conteúdo

o CUBEVALUE A função usa a seguinte sintaxe para operar:

CUBEVALUE (Conexão, [member_expression1], [member_expression2],…)

o CUBEVALUE A função tem os seguintes argumentos:

  • Conexão: esto es obligatorio y representa una cadena de texto del nombre de la conexión al cubo
  • expresión_miembro: estos argumentos son opcionales. Cada uno es una cadena de texto de una expresión multidimensional (MDX) que se evalúa como un miembro o tupla dentro del cubo. alternativamente, expresión_miembro puede ser un conjunto definido con el CUBESET Função. Usar expresión_miembro como segmentación para establecer la parte del cubo para la que se devuelve el valor agregado. Si no se especifica ninguna medida en expresión_miembro, se utiliza la medida predeterminada para ese cubo.

Deve-se notar ao mesmo tempo que:

  • a CUBEVALUE La función es compatible solo cuando el libro de trabajo está conectado a un Microsoft SQL Server 2005 Analysis Services o una fuente de datos posterior.
  • quando o CUBEVALUE La función evalúa, muestra temporalmente un mensaje “# GETTING_DATA …” en la celda antes de que se recuperen todos los datos.
  • si se utiliza una referencia de celda para expresión_miembro y esa referencia de celda contiene un CUBO Função, então expresión_miembro utiliza el MDX expresión para el elemento en la celda referenciada, y no el valor que se muestra en esa celda referenciada
  • si el nombre de la conexión no es una conexión de libro válida almacenada en el libro de trabajo, CUBEVALUE devuelve un #¿NOMBRE? valor de erro. Si el servidor de procesamiento analítico en línea (OLAP) no se está ejecutando, no está habilitada o devuelve un mensaje de error, CUBEVALUE devuelve un #¿NOMBRE? valor de erro
  • si al menos un elemento dentro de la tupla no es válido, CUBEVALUE devuelve un #¡VALOR! valor de erro
  • CUBEVALUE devuelve un #N / UMA valor de error cuando:
    • a expresión_miembro la sintaxis es incorrecta
    • el miembro especificado por expresión_miembro no existe en el cubo
    • la tupla no es válida debido a que no hay intersección para los valores especificados (esto puede ocurrir con bastantes ítems de la misma jerarquía)
    • el conjunto contiene al menos un miembro con una dimensión distinto a los otros miembros
  • CUBEVALUE puede devolver un #N / UMA valor de error si hace referencia a un objeto basado en sesión, como un miembro calculado o un conjunto con nombre, en una tabla dinámica cuando se comparte una conexión, y esa tabla dinámica se elimina o convierte la tabla dinámica en fórmulas (en la pestaña ‘Opcionesde la cinta , en el grupo ‘Herramientas’, haga clic en ‘Herramientas OLAPy después haga clic en ‘Convertir a fórmulas’).

Problema conocido: los valores nulos se convierten en cadenas de longitud cero

Em excel, si una celda no tiene datos debido a que nunca la cambió o eliminó el contenido, la celda contiene un valor vacío. En muchos sistemas de bases de datos, un valor vacío se denomina valor nulo. Un valor vacío o nulo significa literalmentesin valor”. Apesar disto, una fórmula nunca puede devolver una cadena vacía o un valor nulo. Una fórmula siempre devuelve uno de tres valores: un valor numérico; un valor de texto (que puede ser una cadena de longitud cero) o un valor de error, O que #NUM! o #¡VALOR!

Si una fórmula contiene un CUBEVALUE función conectada a una base de datos de procesamiento analítico en línea (OLAP) y una consulta a esta base de datos da como consecuencia un valor nulo, Excel convierte este valor nulo en una cadena de longitud cero, inclusive si la fórmula devolvería un valor numérico. Esto puede llevar a una situación en la que un rango de celdas contiene una combinación de valores de cadena numéricos y de longitud cero, y esta situación puede afectar los resultados de otras fórmulas que hacen referencia a ese rango de celdas. Como um exemplo, e A1 e A3 contienen números, e A2 contiene una fórmula con un CUBEVALUE función que devuelve una cadena de longitud cero, la próxima fórmula devolvería una #¡VALOR! erro:

Para evitar isso, puede probar una cadena de longitud cero usando el ISTEXT función y usando la E función para reemplazar la longitud cero con un 0 (zero) como muestra el siguiente ejemplo:

= SIM (ESTEXTO (A1), 0, A1) + E (ESTEXTO (A2), 0, A2) + E (ESTEXTO (A3), 0, A3)

alternativamente, puede anidar el CUBEVALUE funcionar en un E condición que devuelve un valor cero si el CUBEVALUE La función se evalúa como una cadena de longitud cero, como muestra el siguiente ejemplo:

= SIM (VALORCUBO (“Vendas”, “[Medidas].[Lucro]”,”[Tempo].[2020]”,”[All Product].[Beverages]”) =” “, 0, CUBEVALUE (” Vendas “,”[Medidas].[Lucro]”,”[Tempo].[2020]”,”[All Product].[Beverages]”))

Tenga en cuenta que el SOMA La función no necesita esta prueba para una cadena de longitud cero debido a que ignora automáticamente las cadenas de longitud cero al calcular su valor de retorno.

Por favor, veja meus exemplos abaixo:

= VALORCUBO (“Vendas”, “[Medidas].[Lucro]”,”[Tempo].[2020]”,”[All Product].[Beverages]”)

= VALORCUBO ($ UMA $ 1, “[Medidas].[Lucro]”, D $ 12, $ A23)

= CUBEVALUE (“Vendas”, $ B $ 7, D $ 12, $ A23)

Em breve continuaremos com nossas funções de A a Z do Excel. Continue verificando: há uma nova postagem no blog a cada dia útil.

Assine a nossa newsletter

Nós não enviaremos SPAM para você. Nós odiamos isso tanto quanto você.