Activation de l’écriture différée dans un cube OLAP au niveau de la cellule dans Excel 2010 (traduction automatique)

Important

Cet article a été traduit automatiquement, voir l’avertissement. Vous pouvez consulter la version en anglais de cet article ici.

Résumé :  Microsoft Excel 2010 introduit la fonction Analyse de scénarios qui est une solution sans code de capture de données saisies manuellement par l’utilisateur, à l’aide de tableaux croisés dynamiques connectés à des fournisseurs OLAP qui prennent en charge l’instruction UPDATE CUBE. Cet article explique comment étendre la méthodologie utilisée dans l’écriture différée de tableau croisé dynamique à des cellules de feuille de calcul individuelles contenant des fonctions OLAP.

Dernière modification : jeudi 7 avril 2011

S’applique à : Excel 2010 | Office 2010 | SharePoint Server 2010 | VBA

Dans cet article
Vue d’ensemble
En exploitant les Sources de données OLAP pour l'écriture différée
Exploration de la propriété MDX de l'objet Range
Création d'une FDU de base pour l'écriture différée de données
Création d'un fichier UDF en fonction de la Directive OLAP Source de données en écriture différée
Création de la Directive de base UPDATE CUBE Statement
Ajout d'un paramètre de règle d'Allocation à la FDU
Points à considérer lorsque vous envisagez d'utiliser un déclencheur basé sur une cellule à écriture différée approche
Conclusion
Ressources supplémentaires

S'applique à:  Microsoft Office 2010, Microsoft Office System 2007, Microsoft SQL Server 2008 R2, Microsoft SQL Server 2008

Publication :  Décembre 2010

Fournie par :  Sergei Gundorov, Microsoft | Pablo Trejo Montemayor, Microsoft

Sommaire

Vue d’ensemble

Cet article explique comment faire pour :

  • Exploitez les sources de données OLAP pour les données à écriture différéent à partir d'Excel

  • Utilisez la propriété de cellule MDX introduite dans Excel 2007

  • Créer la base fonction utilisateur (UDF) qui déclenche le processus de mise à jour des données

  • Créer un fichier UDF pour les scénarios de réécriture de données complexes

La fonctionnalité d'écriture différée de Microsoft Excel 2010 gère les scénarios pour l'analyse de "What If" prise en charge de la mise à jour des données en temps réel dans les cubes OLAP. Sécurité de dimension dynamique de Microsoft SQL Server Analysis Services fournit une sécurité en lecture / écriture utilisateur au niveau du membre de dimension. Les données entrées et envoyées aux niveaux inférieurs de la hiérarchie par les utilisateurs autorisés sont instantanément agrégées et traitées par l'intermédiaire d'un ensemble de règles qui sont définis dans le cube Analysis Services. Ceci permet les mises à jour de données soient immédiatement disponibles pour les décideurs, qui rend la combinaison de Microsoft Excel connecté à un cube OLAP dans un système de support de décision analytique en temps réel.

L'équipe d'ingénierie Microsoft Information Technology Business Intelligence prend en charge le groupe de services financiers où des feuilles de calcul Microsoft Excel avec des fonctions de tableaux croisés dynamiques et le CUBE OLAP sont utilisés pour l'analyse des processus métiers et la décision prise en charge. Il existe de nombreux cas où les données qui sont utilisées dans les modèles d'entreprise doivent être entrées manuellement par les utilisateurs autorisés, lorsque ces données ne seront pas disponibles via un service ou un autre mécanisme rapidement et facilement accessible. Par exemple, il n'existe aucune source de données qui assure le suivi des articles sur les jeux Xbox 360 dans le monde dans un mois donné. Toutefois, l'équipe du leadership peut-être besoin de ces informations pour la prise de décisions sur le premier jour du mois. Il s'agit dans lequel la fonctionnalité d'écriture différée Excel 2010 tableau croisé dynamique fournit une solution de codeless à l'entrée de données. Néanmoins, pas tous les modèles d'entreprise créés dans des feuilles de calcul Microsoft Excel entrent dans la structure fixe et tabulaire des tableaux croisés dynamiques. Dans de nombreux cas, les utilisateurs créent des vues asymétriques et mises en page à l'aide intégrée Microsoft Excel les fonctions de CUBE OLAP. En raison de la forte dépendance sur les fonctions CUBE, l'équipe de développement devait prendre la fonctionnalité d'écriture différée de tableau croisé dynamique au niveau supérieur et de développer un moyen pour écrire des données dans le cube Analysis Services à partir de n'importe quelle cellule de feuille de calcul.

Étant donné que cette approche est basée sur les fonctions CUBE ont été introduites dans Excel 2007 (même si la fonctionnalité d'écriture différée de tableau croisé dynamique intégrée est uniquement disponible dans Office 2010), les concepts décrits dans cet article fonctionnent également avec le modèle d'objet Office 2007. Cet article suppose que le lecteur possède les connaissances des principes de base automatisation Microsoft Office et est familiarisé avec les principes fondamentaux de SQL Server Analysis Services et MDX.

En exploitant les Sources de données OLAP pour l'écriture différée

Une source de données OLAP qui prend en charge l'instruction UPDATE CUBE (par exemple, Microsoft SQL Server Analysis Services) peut être configurée pour accepter les entrées d'utilisateur et peut être utilisée pour les données à écriture différée de tableaux croisés dynamiques Microsoft Excel 2010 sans aucun code personnalisé. Pour plus d'informations sur la configuration de source de données OLAP, consultez la section ressources supplémentaires. Le reste de cet article décrit des scénarios de différée niveau libres de feuille de calcul disposition cellule rendues possibles avec une petite quantité de code personnalisé.

Exploration de la propriété MDX de l'objet Range

Dans Microsoft Excel 2007, il est devenu possible d'extraire des données dans des feuilles de calcul Excel à l'aide de fonctions OLAP. N'importe quelle cellule qui contient une fonction OLAP (par exemple CUBEMEMBER, CUBEVALUE ou CUBERANKEDMEMBER) et qui ne correspond pas à une erreur a une propriété accessible par programme qui contient l'instruction MDX Microsoft Excel validés qui utilise le moteur de calcul d'extraction des données dans la cellule à partir de la source de données OLAP. Pour accéder à cette propriété, cliquez sur une cellule avec un Fonction CUBE et dans l'éditeur VBA exécuter l'instruction suivante dans la « fenêtre immédiate ».

?ActiveCell.MDX

La propriété MDX retournée n'est pas une instruction complète SELECT, mais un expression de tuple et sera semblable à l'exemple de code suivant.

([Geography].[Geography Hierarchy].&[779], [Time].[Time].[Fiscal Month].&[7], [KPI].[Scorecards].[KPI].&[1]&[101], [Measures].[Actual])

Cette valeur de propriété est idéale pour les scénarios d'écriture différée dans la mesure où la même cellule instruction MDX qui a été utilisée pour récupérer des données peut également être utilisée pour les données à écriture différée sans modification.

Important

Lors de la récupération de données n'exige pas que l'utilisateur incluent toutes les dimensions de cube dans la formule pour obtenir les données, il est essentiel d'avoir toutes les dimensions pour les données en écriture différée si vous voulez éviter l'allocation par défaut par le moteur OLAP. Par exemple, si vous ont été de créer une instruction UPDATE CUBE à l'aide de la expression de tuple ci-dessus et retirez la dimension Geography, la valeur entrée serait répartie équitablement entre tous les membres de la dimension Geography, en fonction de comportement par défaut de Analysis Services.

Notes

Par souci de simplicité, les exemples qui suivent supposent que le classeur contient une seule connexion utilisée pour la récupération de données et en écriture différée.

Création d'une FDU de base pour l'écriture différée de données

L'instruction UPDATE CUBE pour une seule cellule de cube OLAP ressemble à l'exemple de code suivant.

UPDATE CUBE [ManualCube] SET 
(
[Geography].[Geography Hierarchy].[United States], 
[Time].[Time].[Fiscal Month].[July], 
[KPI].[Scorecards].[KPI].&[1]&[101], 
[Measures].[Actual]
)=1000;

Vous pouvez utiliser la fonction définie par l'utilisateur dans la cellule de déclenchement de l'écriture différée pour créer, valider et exécutez l'instruction de mise à jour lors du calcul ou un retour d'une directive de déclencheur de mise à jour (pour plus d'informations, consultez le scénario de base suivant la directive).

La méthode recommandée pour configurer une FDU différée OLAP qui illustre le concept peut avoir que deux paramètres et doit retourner des succès ou l'échec de l'instruction UPDATE CUBE :

  1. Référence à une cellule de la source qui contient la fonction CUBEVALUE.

  2. Référence à une cellule de saisie manuelle des données.

Par exemple : =CubeWriteBack(H20,E20)

Le code-behind de la FDU va vérifier la propriété MDX dans la cellule source référencé (H20 dans l'exemple précédent), valider ce manuel cellule d'entrée (E20 dans l'exemple) n'est pas vide, évaluer les valeurs de deux cellules référencées pour l'égalité et si elles ne sont pas égales il construire et exécuter l'instruction UPDATE CUBE. N'oubliez pas que les mises à jour ne sont pas permanentes jusqu'à ce qu'ils sont suivis par une instruction de COMMIT TRANSACTION exécutée dans la même session utilisateur à l'aide de la même instance de la connexion ouverte.

Le fichier UDF obtiendra une réponse de source de données OLAP concernant le résultat de la mise à jour tentée. Cette réponse doit être évaluée dans le code UDF et le résultat ajouté dans la cellule de déclencheur pour avertir l'utilisateur de la réussite ou l'échec de l'opération de mise à jour de valeur de cellule.

Bien que cet exemple UDF montre clairement le concept d'un déclencheur basé sur une cellule en écriture différée, il ne sera pas l'approche la plus efficace pour certains scénarios.

Création d'un fichier UDF en fonction de la Directive OLAP Source de données en écriture différée

Il est plus pratique et efficace d'exécuter les instructions de mise à jour en bloc. Pour prendre en charge la mise à jour en bloc scénario la FDU, au lieu d'exécuter l'instruction de mise à jour lors du calcul, doit correspondre à une directive qui sera utilisée par un autre processus. La directive contient des instructions qui indiquent le processus de mise à jour en bloc à utiliser les informations contenues dans les cellules de déclencheur pour générer une instruction de mise à jour par programme. L'utilisateur doit avoir une option d'interface utilisateur pour demander le processus de mise à jour en bloc lorsqu'il a terminé la création manuelle des données entrées et décide de les soumettre. La figure 1 illustre un exemple de ruban Microsoft Office Fluent d'interface utilisateur personnalisée qui contient un affectée au bouton appel par programme de mise à jour en bloc.

La figure 1. Interface utilisateur Sample

Exemple d’interface utilisateur

Un fichier UDF différée directive OLAP prend toujours les deux références de cellule en tant que paramètres, mais au lieu d'émettre une instruction update lors du calcul de cellule que retourne une directive d'écriture différée :

  1. Référence à une cellule de la source qui contient une fonction CUBEVALUE.

  2. Référence à une cellule de saisie manuelle des données.

La version « dans la directive de cellule de déclencheur » de la fonction d'écriture différée =CubeWriteBack(H20,E20) peut renvoyer les valeurs suivantes qui représentent les directives de traitement :

  • "UPDATE|MDXRetention!$H$20|MDXRetention!$E$20" est une directive délimitée par des tuyaux qui contient des éléments de l'arborescence. La première partie de la directive : UPDATE, ordonne le processus de mise à jour en bloc qu'il doit émettre une instruction UPDATE CUBE. La deuxième partie contient une référence de cellule qui sert de source de l'instruction MDX. La troisième partie est une référence de cellule qui contient la nouvelle valeur que l'utilisateur veut mettre à jour dans la source de données.

  • "No Update from: MDXRetention!$H$20" où cellule H20 est la cellule avec Fonction CUBE, une propriété MDX et sa valeur de la cellule est égale à la valeur de cellule d'entrée utilisateur (E20 dans notre exemple).

  • "Input Range is Not Numeric!" est renvoyée si la cellule d'entrée manuelle E20 est vide ou conserve d'autres valeurs non numériques.

  • "Value Range does not contain valid MDX!" est renvoyée si la cellule H20 ne possède pas de propriété MDX valide.

Dans tous les cas, sauf la première le code de méthode de mise à jour en bloc n'inclura pas les cellules de déclencheur dans l'instruction de mise à jour de processus de construction.

L'exemple de code suivant est un exemple de code VBA pour une cellule de déclencheur UDF qui renvoie une directive.

'**********************************************************************
'CubeWriteBack User Defined Function
'**********************************************************************
Function CubeWriteBack(valTestRange As Variant,inputRange As Variant) _
            As String
    
    Dim InputCell As Range
    Dim ValueCell As Range
          
    'Testing for valid input range input
    On Error GoTo ICellRangeErrorHandler
    Set InputCell = inputRange
    
    'Testing for valid test value range input
    On Error GoTo VCellRangeErrorHandler
    Set ValueCell = valTestRange
    
    'Ranges are valid
    'Validate MDX in test value cell (used in Cube Update statement)
    On Error GoTo ErrorHandler
    'validating that both ranges contain only one cell
    If InputCell.Cells.Count > 1 Then
        CubeWriteBack = "Input Range contains multiple cells!"
        Exit Function
    End If
    
    If ValueCell.Cells.Count > 1 Then
        CubeWriteBack = "Value Range contains multiple cells!"
        Exit Function
    End If
        
    'validating user input as numeric
    If Not (IsNumeric(InputCell.Value)) Or _
        IsEmpty(InputCell) Then
        CubeWriteBack = "Input Range is Not Numeric!"
        Exit Function
    End If
    
    'validating existence of MDX in the value test range
    If Len(ValueCell.MDX) = 0 Then
        CubeWriteBack = "Value Range doesn't contain valid MDX!"
        Exit Function
    End If
        
    'TODO: move this first for performance? Assess!
    If InputCell = ValueCell Then
        CubeWriteBack = "No Update from: " & _
        InputCell.Worksheet.Name & "!" & _
        InputCell.Address
    Else
        'modified 8/4/09 to prevent possible returned MDX attack
        CubeWriteBack = "UPDATE|" & _
            InputCell.Worksheet.Name & "!" & _
            InputCell.Address & "|" & _
            ValueCell.Worksheet.Name & "!" & _
            ValueCell.Address
    End If
    
Exit Function
    
'Error Handlers
ICellRangeErrorHandler:
    
    CubeWriteBack = inputRange & " is not a valid range!"

Exit Function

VCellRangeErrorHandler:
    
    CubeWriteBack = valTestRange & " is not a valid range!"

Exit Function

ErrorHandler:
    
    CubeWriteBack = "#N/A"
    
End Function

Création de la Directive de base UPDATE CUBE Statement

L'instruction de mise à jour de la base de la directive est construite en analysant toutes les cellules de la plage utilisée sur chaque feuille. Si le processus détecte que la cellule contient la fonction de CubeWriteBack, il vérifie que la valeur de la cellule contient une directive de la mise à jour et qu'il génère l'instruction de mise à jour cumulative. L'exemple de code suivant est l'exemple de code VBA.

'**********************************************************************
'Function that builds update statement
'**********************************************************************
Function GetAllUpdateStatements() As String

    Dim strMDX As String
    Dim rangeAddress As String
    Dim rangeWithUpdate As Range
    Dim wks As Worksheet
    Dim cubeName As String
        
    For Each wks In ThisWorkbook.Worksheets
        
        Set rangeWithUpdate = GetRangeForUpdate(wks)
        
        If Not rangeWithUpdate Is Nothing Then
            
            rangeAddress = rangeWithUpdate.Address
            strMDX = strMDX & ConstructUpdates(rangeWithUpdate)
    
        End If
        
    Next
    
    'Aborting update if there are no UPDATE statements to send
    If Len(strMDX) = 0 Then Exit Function
        
    cubeName = Range("CUBE_NAME")
    GetAllUpdateStatements = "UPDATE CUBE [" & cubeName & "] SET "
    GetAllUpdateStatements = GetAllUpdateStatements & strMDX
    'performing clean up
    If Right(GetAllUpdateStatements, 3) = "," & vbCr & vbCr Then
        GetAllUpdateStatements = Left(GetAllUpdateStatements, _
        Len(GetAllUpdateStatements) - 3) & ";"
    End If
    
End Function

'**********************************************************************
'Function to retrieve the range of cells with values for OLAP update
'**********************************************************************
Function GetRangeForUpdate(wks As Worksheet) As Range

    Dim rangeWithCWBFunc As Range
    Dim rCell As Range
    Dim i As Integer
    
    'iterating through every cell to get the list of all cells that
    'contain CWB OLAP update function
    For Each rCell In wks.UsedRange.Cells
                    
        'collecting all cells that contain UDFs
        If InStr(rCell.Formula, "CubeWriteBack") > 0 Then
            
            'Testing to see if the range contains UPDATE directive
            If Not Left(rCell.Value, 7) = "UPDATE|" Then GoTo SkipRange
            
            'Add to the collection cells to be updated
            If Not rangeWithCWBFunc Is Nothing Then
                Set rangeWithCWBFunc = _
                    Application.Union(rangeWithCWBFunc, rCell)
            Else
               Set rangeWithCWBFunc = rCell
            End If
                        
        End If
        
SkipRange:
    
    Next
    'Return the range
    Set GetRangeForUpdate = rangeWithCWBFunc

End Function

'**********************************************************************
'Function to construct update statement string
'**********************************************************************
Function ConstructUpdates(updateRange As Range)

    Dim rCell As Range
    Dim updateStatement As String
    Dim params() As String
    
    For Each rCell In updateRange
        'split and process using GetUpdateStatement
        'add commit transact here?
        params = Split(rCell.Value, "|")
        updateStatement = updateStatement & _
            GetUpdateStatement(Range(params(1)), Range(params(2))) & _
            "," & vbCr & vbCr
        
    Next
    
    ConstructUpdates = updateStatement

End Function

'**********************************************************************
'Function to build individual OLAP Update Statement
'**********************************************************************
Function GetUpdateStatement(valueRange As Range, mdxRange As Range) _
    As String
    
    GetUpdateStatement = mdxRange.MDX
    'modified 12/18/09: address non-US locale decimal separator issues
    'valueRange is already confirmed to be numeric by the UDF,
    'so straight replace of comma is valid
    GetUpdateStatement = GetUpdateStatement & "=" & _
        Replace(valueRange.Value, ",", ".")
    
End Function

L'exemple de code suivant est l'instruction résultante pour mettre à jour les valeurs entrées dans deux cellules.

UPDATE CUBE [ManualCube] SET 

([Geography].[Geography Hierarchy].&[779],[Time].[Time].[Fiscal Month].&[7],[Measures].[Actual],[KPI].[KPI Name].&[1]&[101])=9280,

([Geography].[Geography Hierarchy].&[779],[Time].[Time].[Fiscal Month].&[7],[Measures].[Actual],[KPI].[KPI Name].&[1]&[102])=9681;

Important

  • Être conscient de la façon dont les segments de la mise à jour valeur individuelle sont séparés. Dans MDX, les segments de mise à jour de valeur individuelle sont séparées par des virgules.

  • Pour valider les modifications et rendre les mises à jour de valeur de données à partir de cette instruction de mise à jour cumulative visible aux autres utilisateurs, exécuter immédiatement l'instruction COMMIT TRANSACTION dans la même session utilisateur (c'est-à-dire, sur le même ouvrir connexion).

Ajout d'un paramètre de règle d'Allocation à la FDU

L'instruction UPDATE CUBE prend en charge les règles d'allocation. Vous pouvez ajouter un autre niveau de flexibilité (et la complexité) pour les utilisateurs finaux en incluant un paramètre de règle d'allocation de la FDU. Pour plus d'informations sur la syntaxe exacte des règles d'allocations, voir la documentation de votre source de données OLAP. L'exemple de code suivant est basé sur la syntaxe de Microsoft SQL Server Analysis Services.

Le fichier UDF qui prend en charge les allocations peut faire référence à une plage nommée qui contiendra la chaîne de règle d'allocation.

Par exemple : =CubeWriteBack(J1102,E1102,USE_EQUAL_ALLOCATION)

USE_EQUAL_ALLOCATION une plage nommée contient la chaîne USE_EQUAL_ALLOCATION. La raison de la recommandation de référence de plage nommée consiste à activer la prise en charge pour les règles d'allocation de (non constante) plus complexes tels que USE_WEIGHTED_ALLOCATION par des USE_WEIGHTED_INCREMENT où règle d'affectation complexe peut être défini une fois dans une seule cellule et utiliser de nombreuses cellules de données en écriture différée déclencheur en référençant que cellule à l'aide de descriptif une plage nommée.

L'exemple de code suivant est l'instruction update avec une règle simple répartition égale de l'exemple précédent.

UPDATE CUBE [ManualCube] SET 
(
[Geography].[Geography Hierarchy].[United States], 
[Time].[Time].[Fiscal Quarter].[Q1-2011], 
[KPI].[Scorecards].[KPI].&[1]&[101], 
[Measures].[Actual]
)=8228 USE_EQUAL_ALLOCATION;

Dans ce cas, la valeur de 8228 sera répartie uniformément entre tous les mois qui ont Q1-2011 que leurs parents.

Points à considérer lorsque vous envisagez d'utiliser un déclencheur basé sur une cellule à écriture différée approche

Lorsque vous envisagez d'utiliser une approche différée de déclencheur basé sur une cellule, considérez les éléments suivants :

  • La même instruction MDX qui est utilisée pour récupérer des données est utilisée pour l'installation en feuille de calcul données en écriture différée moins sujets à erreur.

  • Outre la prise en charge de la mise en page feuille de calcul de forme libre la cellule en fonction OLAP différée axée sur l'autorise également les auteurs de la feuille de calcul construire des instructions MDX complexes pour la récupération des données avancées et les scénarios d'écriture différée. Par exemple, l'utilisateur peut construire des fonctions de CUBEVALUE à écriture différée directement à la.DATAMEMBER pour les scénarios où la dimension est modélisée comme une hiérarchie parent-enfant et que vous souhaitez éviter l'allocation aux enfants. Ce scénario peut être effectué en entrant la fonction CUBEVALUE suivante dans la cellule source.

    =CUBEVALUE(ConnectionFile,"[Geography].[Geography Hierarchy].&["&GeoID&"].DATAMEMBER,E$9,$C11,Time)
    

    La propriété MDX de cette cellule peut ressembler à l'exemple de code suivant.

    ([Geography].[Geography Hierarchy].&[779].DATAMEMBER, [Measures].[Actual], [KPI].[KPI Name].&[1]&[101], [Time].[Time].[Fiscal Month].&[7])
    

    L'instruction update écrit la valeur de cellule directement pour les États-Unis (membre parent avec ID 779) et n'est pas allouer parmi ses enfants (dans ce cas, les États).

  • Meilleur contrôle de disposition avec référencement de cellule. Nos utilisateurs professionnels a décidé d'avoir une feuille de saisie manuelle des données dédié qui est facile à réaliser avec des références de cellule. N'importe quelle cellule avec Fonction CUBE (par exemple, sur la feuille utilisée pour le mode de présentation) référencés avec un signe égal (=) dans une autre cellule (par exemple, sur la feuille de saisie manuelle des données) hérite la propriété MDX de la cellule parent.

  • Tableur en formule de mise en forme libre requièrent généralement plus de temps pour définir et gérer qu'un tableau croisé dynamique.

  • L'écriture différée à une source de données OLAP ne doit pas servir pour les applications nécessitant une grande quantité de saisie manuelle des données. Toutefois, il fournit certaines des meilleures expériences utilisateur pour les cas dans lesquels les entrées manuelles sont utilisées dans des calculs complexes et les données doivent être disponibles en temps réel. Basée sur les résultats des tests effectués sur la cible doit être à 2000 ou mises à jour des manuels de cellule moins par lot. En moyenne, mises à jour 2000 complètes en secondes de 30 à 35 par demande à partir d'ordinateurs clients situés 11 fuseaux horaires à partir de la source de données OLAP (en supposant que la vitesse de connexion réseau adéquate). Journaux d'application utilisation montrent que les utilisateurs disposent rarement plus de 200 mises à jour de cellule par « Soumettre manuel Data » clic sur un bouton dans leur déroulement normal de travail. La majorité des envois de données manuelle contiennent moins de 10 cellules par clic de l'utilisateur et complétés dans environ 10 à 15 secondes de la plupart des emplacements distants.

Conclusion

Cet article explique que si vous utilisez des fonctions de récupération de données capables de maintenir les dimensions d'enregistrement d'origine (telles que les fonctions CUBE avec MDX, propriété de Excel), la cellule de déclencheur approche de FDU permettra réécrire dans la source de données et d'effectuer les mises à jour disponibles en temps réel aux utilisateurs de cette source de données. Plus précisément, cet article explique comment Microsoft Excel les fonctions CUBE avec la cellule de déclencheur UDF et une source de données OLAP qui prend en charge d'instruction de UPDATE CUBE peuvent faire Microsoft Excel des feuilles de calcul avec une formule complexe pilotée par les règles d'entreprise dans un outil de saisie de données qui prend en charge la collaboration en temps réel. Cet article également mis en évidence que le fait que cette approche peut être étendue pour prendre en charge des scénarios plus complexes : par exemple, à l'aide de règles d'allocation et de modification des valeurs pour certains membres de la hiérarchie parent-enfant.

Ressources supplémentaires

Pour plus d’informations, consultez les ressources suivantes :

Notes

Avertissement traduction automatique : cet article a été traduit par un ordinateur, sans intervention humaine. Microsoft propose cette traduction automatique pour offrir aux personnes ne maîtrisant pas l’anglais l’accès au contenu relatif aux produits, services et technologies Microsoft. Comme cet article a été traduit automatiquement, il risque de contenir des erreurs de grammaire, de syntaxe ou de terminologie.