La función CUBEVALUE

Contenu

Le CUBEVALUE La fonction utilise la syntaxe suivante pour fonctionner:

CUBEVALUE (Connexion, [member_expression1], [member_expression2],…)

Le CUBEVALUE La fonction a les arguments suivants:

  • Connexion: 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 (de référencer ce moteur dans tous les produits) que se evalúa como un miembro o tupla dentro del cubo. Alternativement, expresión_miembro puede ser un conjunto definido con el CUBESET une fonction. Utilisation expresión_miembro Quoi segmentation para establecer la parte del cubo para la que se devuelve el valor agregado. Si no se especifica ninguna mesure dans expresión_miembro, se utiliza la medida predeterminada para ese cubo.

Il faut noter en même temps que:

  • la 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 postérieur.
  • quand il 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 une fonction, ensuite expresión_miembro utiliza el de référencer ce moteur dans tous les produits 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 renvoie un #NOM? valeur d'erreur. 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 renvoie un #NOM? valeur d'erreur
  • si al menos un elemento dentro de la tupla no es válido, CUBEVALUE renvoie un #VALEUR! valeur d'erreur
  • CUBEVALUE renvoie un #N / UNE valor de error cuando:
    • la 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 dimension distinto a los otros miembros
  • CUBEVALUE puede devolver un #N / UNE valor de error si hace referencia a un objeto basado en session, como un miembro calculado o un conjunto con nombre, dans une table dynamique 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

dans 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 valeur nulle. Un valor vacío o nulo significa literalmentesin valor”. Malgré cela, 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, Quoi #SUR UNE! O #VALEUR!

Si una fórmula contiene un CUBEVALUE función conectada a una base de données 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. Par exemple, et A1 Oui A3 contienen números, Oui 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 #VALEUR! Erreur:

Pour éviter cela, puede probar una cadena de longitud cero usando el ISTEXT función y usando la ET función para reemplazar la longitud cero con un 0 (zéro) como muestra el siguiente ejemplo:

= OUI (ESTEXTO (A1), 0, A1) + ET (ESTEXTO (A2), 0, A2) + ET (ESTEXTO (A3), 0, A3)

Alternativement, puede anidar el CUBEVALUE funcionar en un ET 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:

= OUI (VALORCUBO (“Ventes”, “[Dispositions].[Profit]”,”[Temps].[2020]”,”[All Product].[Beverages]”) =” “, 0, CUBEVALUE (” Ventes “,”[Dispositions].[Profit]”,”[Temps].[2020]”,”[All Product].[Beverages]”))

Tenga en cuenta que el SOMME 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.

S'il vous plait, voir mes exemples ci-dessous:

= VALORCUBO (“Ventes”, “[Dispositions].[Profit]”,”[Temps].[2020]”,”[All Product].[Beverages]”)

= VALORCUBO ($ UNE $ 1, “[Dispositions].[Profit]”, ré $ 12, $ A23)

= CUBEVALUE (“Ventes”, $ B $ 7, ré $ 12, $ A23)

Bientôt, nous continuerons avec nos fonctions de A à Z d'Excel. Continuez à vérifier: il y a un nouveau billet de blog chaque jour ouvrable.

Abonnez-vous à notre newsletter

Nous ne vous enverrons pas de courrier SPAM. Nous le détestons autant que vous.