Méthodes de répartition des valeurs dans les valeurs de cellule consolidées

Les commandes Splasher qui réécrivent des valeurs dans des cellules consolidées sont précédées du symbole dièse (#). En cours d'utilisation, le nom de chaque commande du Splasher est abrégé à une seule lettre, telle que C (Copy) ou L (Like).

Si une valeur de texte écrite dans une cellule commence par l'une de ces lettres ou par le symbole #, ou contient le nom complet d'une commande du Splasher, elle peut être analysée de manière incorrecte sous forme de commande Splasher. Lorsque cela se produit, la cellule affiche #REF!.

Si la valeur à écrire dans une cellule est toujours du texte, et jamais une date ou un nombre, il est possible d'éviter ce problème en faisant précéder la valeur de deux apostrophes. La première apostrophe garantit que la chaîne n'est pas interprétée en tant que nombre ou en tant que date ou heure. La deuxième apostrophe garantit que la chaîne n'est pas interprétée comme une commande Splasher.

Ce problème se produit uniquement avec les valeurs des cellules, et non par exemple avec les notes ou les attributs des cellules. Il se produit uniquement si le splashing est activé.

Exemple

Cette formule CELLWRITE partielle a pour but d'écrire la valeur C2019-20 dans une cellule.
=CELLWRITE("C2019-20","DEPM","BPCCONFIG_CYCLE","...

Toutefois, le C est interprété comme une commande COPY et une erreur #REF! est renvoyée.

L'ajout de deux apostrophes après les guillemets ouvrants indique à l'analyseur syntaxique que la valeur n'est pas une commande Splasher et n'est pas un nombre ou une date :

=CELLWRITE("''C2019-20","DEPM","BPCCONFIG_CYCLE","...

Allocate et Alter

Pour chaque méthode de réécriture, il est possible de spécifier l'affectation ou la modification des valeurs.

La commande Affecter remplace les valeurs existantes. Par exemple, si une cellule contient « 1 », si vous y écrivez « 2 » à l'aide de la commande Allocate, la valeur de cette cellule devient « 2 ».

La commande ALTER modifie les valeurs existantes avec la valeur indiquée. Par exemple, si une cellule contient « 1 » et si l'utilisateur y écrit « 2 » à l'aide de la commande Alter, la valeur de cette cellule devient « 3 ».

Les commandes ALTER comportent une esperluette (&) comme préfixe.

Méthodes et commandes de réécriture

Par défaut, les méthodes de réécriture sont additives : elles augmentent les valeurs existantes de diverses manières. Il est possible de modifier la syntaxe de chaque méthode de réécriture afin de soustraire des valeurs et de spécifier des valeurs par pourcentages.

Dans les exemples de syntaxe d'affectation pondérée (W), égale (E), de base (B) et Like (L) de cette section, [valeur] peut recevoir le signe moins (-) comme préfixe pour l'écriture de valeurs négatives ou le signe pourcentage (%) comme suffixe pour la modification des valeurs en fonction d'un pourcentage.

Par exemple :
Syntaxe Explication
&W20 Ajoute la valeur 20 à la valeur de la cellule
&W-20 Soustrait la valeur 20 de la valeur de cellule
&W5% Augmente la valeur de la cellule de 5 %

Le signe plus (+) est implicite, mais il est possible de le rendre explicite (par exemple, &W+20). Chaque méthode de réécriture prend en charge deux ou trois syntaxes. Par exemple, les syntaxes #W[value] et #@[value] sont équivalentes. Les exemples contenant des noms de dimensions et d'éléments sont basés sur l'application Exemples.

Pondéré

Les proportions relatives des valeurs enfants sont préservées lorsque la valeur de leur parent est augmentée ou diminuée.

Affectation pondérée : #W[valeur]

Si l'affectation pondérée est utilisée pour écrire une valeur dans une cellule parent afin, par exemple, de doubler la valeur existante, les valeurs de chaque enfant sont également doublées.

Modification pondérée : &W[value]

Si la modification pondérée est utilisée pour écrire une valeur dans une cellule parent afin, par exemple, de doubler la valeur existante, la valeur de chaque enfant est doublée et ajoutée à la valeur existante.

Exemple

La cellule parent a la valeur 9 et chacune de ses cellules enfants a la valeur 3. Entrer la valeur 18 dans la cellule parent avec la modification pondérée. Les valeurs de chaque cellule enfant sont doublées et ajoutées à la valeur existante. Les cellules enfants prennent donc la valeur 9, et la cellule parent prend la valeur 27.

Égal

Les valeurs spécifiées dans les cellules parents sont distribuées de manière égale à leurs cellules enfants.

Affectation égale : #E[valeur]

La valeur entrée dans la cellule parent remplace la valeur existante et est distribuée de manière égale aux cellules enfants.

Exemple

Une cellule parent compte trois cellules enfants. Si l'on écrit la valeur 12 dans la cellule parent avec une affectation égale, chacune des cellules enfants prend la valeur 4.

Modification égale : &E[valeur]

La valeur entrée dans la cellule parent est distribuée de manière égale aux cellules enfants et est ajoutée à la valeur existante.

Exemple

La valeur de la cellule parent est 12. Il y a trois cellules enfants, chacune avec la valeur 4. L'utilisateur écrit la valeur 12 dans la cellule parent avec la modification égale. Cette valeur est répartie de manière égale entre toutes les cellules enfants et ajoutée à la valeur existante. Les cellules enfant prennent chacune la valeur 8, tandis que la cellule parent prend la valeur 24.

Base

La valeur écrite dans une cellule parent est écrite dans chaque cellule enfant. La valeur de la cellule parent est mise à jour.

Affectation de base : #B[valeur]

La valeur écrite dans une cellule parent est écrite dans chaque cellule enfant, remplaçant la valeur existante.

Exemple

Une cellule parent compte trois cellules enfants. L'utilisateur écrit la valeur 2 dans la cellule parent avec l'affectation de base. Les cellules enfant prennent chacune la valeur 2, tandis que la cellule parent prend la valeur 6.

Modification de base : &B[value]

Une valeur écrite dans une cellule parent est écrite dans chaque cellule enfant et ajoutée à la valeur existante.

Exemple

Une cellule parent compte trois cellules enfants. Chaque cellule enfant a la valeur 2. La cellule parent a donc la valeur 6. Vous écrivez la valeur 2 dans la cellule parent avec la modification de base. cette valeur est écrite dans chaque cellule enfant et ajoutée à la valeur existante. Chaque cellule enfant prend la valeur 4, tandis que la cellule parent prend la valeur 12.

COPY

Il est possible de copier des valeurs d'une zone d'un cube vers une autre : cela permet par exemple de transférer les chiffres réels d'un exercice vers le budget d'un autre exercice. Dans cet exemple, les chiffres réels sont la source et le budget est la cible.

Écrire la commande COPY dans la cellule cible. Dans la commande, spécifier uniquement les dimensions et éléments qui distinguent la zone source du cube de la zone cible. Si les éléments appartiennent sans aucune équivoque possible à une dimension spécifique, seuls les éléments doivent être précisés.

COPY - affectation : #C[Tuple]

COPY - altérer : &C[Tuple]

Un tuple est l'adresse d'une zone spécifique de la base de données. Dans ce cas, le tuple est l'adresse des données à copier. Il est recommandé d'utiliser des noms d'élément uniques pour spécifier le tuple.

Les valeurs copiées d'une zone d'un cube vers une autre remplacent les valeurs existantes.
Remarque

COPY avec affectation utilise External Weighted Basic comme méthode de réécriture spécifique à OLAP lorsque les éléments de la source et de la cible sont des éléments consolidés (C) ou de base (N). Dans le cas des éléments C, la structure des éléments situés en dessous doit être similaire. Autrement dit, les éléments source et cible doivent avoir le même nombre d'enfants, de petits-enfants, etc. Dans d'autres cas, la méthode External Weighted est utilisée.

COPY avec altérer utilise External Weighted Delta comme méthode de réécriture.

Exemples

L'utilisateur souhaite copier les résultats réels du quatrième trimestre de 2006 vers le budget de ce même trimestre. Sélectionner la cellule contenant les chiffres budgétaires de ce trimestre et spécifier la commande suivante :

#COPY [VALTYPE].[Variance].[Actual];[PERIOD].[All Years].[2006].[2006_Q4]

L'utilisateur souhaite copier les résultats réels du troisième trimestre 2006 en Allemagne vers le budget du quatrième trimestre 2006 en France.

Sélectionner la cellule contenant le budget du quatrième trimestre en France et entrer la commande suivante :

#COPY [REGION].[All Regions].[Europe].[Germany];[VALTYPE].[Variance].[Actual];[PERIOD].[All Years].[2006].[2006_Q3]

COPYFULL

La commande COPYFULL fonctionne de la même manière que la commande COPY, mais elle copie également les valeurs qui sont calculées via des règles.
Remarque

COPYFULL avec affectation utilise External Weighted comme méthode de réécriture spécifique à OLAP.

COPYFULL avec altérer utilise External Weighted Delta.

Éléments de données

Microsoft Analysis Services prend en charge les éléments de données. Un élément de données est une copie d'un élément parent, mais sans le statut de parent. Il est possible de réécrire dans un membre de données sans affecter les éléments enfants.

Exemple

L'utilisateur possède une hiérarchie de personnel ayant un gestionnaire pour élément parent. Lors de la planification du salaire du gestionnaire, il est possible de réécrire une valeur dans l'élément de données Gestionnaire à la place de l'élément Gestionnaire. Ainsi, les salaires des autres membres du personnel n'affectent pas, et ne sont pas affectés par celui du gestionnaire.

Comme

Il est possible de répartir les valeurs dans les enfants d'une cellule consolidée dans les mêmes proportions que les valeurs des enfants d'une autre cellule consolidée.

Il convient d'écrire la commande Comme dans la cellule cible. Dans la commande, spécifier uniquement les dimensions et éléments qui distinguent la zone source de la base de données de la zone cible. Si les éléments appartiennent sans aucune équivoque possible à une dimension spécifique, seuls les éléments doivent être précisés.

Dans les commandes de réécriture, C indique Comme.

Comme - affectation : #L[value][Tuple]

LIKE - altérer : &L[valeur][Tuple]

Un tuple est l'adresse d'une zone spécifique de la base de données. Dans ce cas, le tuple est l'adresse de la zone source de la base de données.

Exemple

Le chiffre des ventes du quatrième trimestre 2005 en Espagne s'élève à 60. Les chiffres des mois individuels sont 10 pour octobre, 20 pour novembre et 30 pour décembre.

Pour voir les effets qu'auraient des ventes de 600 dans le premier trimestre 2006 en Italie (si la distribution se fait dans les mêmes proportions que les ventes du quatrième trimestre 2005 en Espagne), sélectionner la cellule contenant les ventes du premier trimestre en Italie et entrer la commande suivante :

#L 600 [REGION].[All Regions].[Europe].[Spain];[PERIOD].[All Years].[2005].[2005_Q4]

Les ventes du premier trimestre en Italie prennent la valeur 600. Les chiffres des mois individuels deviennent 100 pour janvier, 200 pour février et 300 pour mars.

#delete

Pour supprimer toutes les valeurs d'une tranche de base de données, spécifier #delete dans une cellule qui contient une formule de réécriture (par exemple WBC).

LIKEFULL

LIKEFULL est une combinaison de LIKE et de COPYFULL. Autrement dit, LIKEFULL permet de réécrire une valeur spécifiée en utilisant External Weighted comme mode de réécriture. La syntaxe pour l'affectation est la suivante :

#LIKEFULL [value] [tuple]

La syntaxe pour altérer est la suivante :

&LIKEFULL [valeur] [tuple]. La méthode External Weighted Delta est utilisée comme méthode de réécriture.