Situations dans lesquelles utiliser des colonnes calculées et des champs calculés

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

Maîtriser l’utilisation de Power Pivot, la plupart des utilisateurs découvrir que la puissance se trouve dans regrouper ou de calculer un résultat d’une certaine manière. Si vos données comportent une colonne avec des valeurs numériques, vous pouvez facilement l’agréger en le sélectionnant dans un tableau croisé dynamique ou de la liste des champs Power View. Par nature, car il s’agit numérique, il sera automatiquement somme, moyenne, comptés, ou un autre type d’agrégation que vous sélectionnez. Il s’agit de mesure implicite. Mesures implicites sont très pratiques pour l’agrégation simple et rapide, mais ils disposent des limites, et ces limites peuvent presque toujours être facilement contournées avec explicite mesures et les colonnes calculées.

Tout d’abord Examinons un exemple où nous utilisons une colonne calculée pour ajouter une nouvelle valeur de texte pour chaque ligne dans une table nommée produit. Chaque ligne dans la table Product contient toutes sortes d’informations relatives à chaque produit nous vendre. Nous avoir des colonnes de nom du produit, couleur, taille, prix marchand, etc.... Nous avons une autre table liée nommée Product Category qui contient une colonne ProductCategoryName. Ce que nous voulons est pour chaque produit dans la table Product à inclure le nom de catégorie de produit à partir de la table Product Category. Dans notre table Product, nous pouvons créer une colonne calculée, nommée catégorie de produit comme suit :

Colonne calculée Catégorie de produit

Notre nouvelle formule catégorie de produit utilise la fonction DAX associé récupère les valeurs de la colonne ProductCategoryName dans la table Product Category connexe et puis entre ces valeurs pour chaque produit (chaque ligne) dans la table Product.

Ceci est un excellent exemple de comment nous pouvons utiliser une colonne calculée pour ajouter une valeur fixe pour chaque ligne que nous pouvons utiliser plus loin dans les lignes, colonnes, ou filtres de zone de tableau croisé dynamique ou un rapport Power View.

Nous allons créer un autre exemple dans lequel nous voulons pour calculer une marge de nos catégories de produits. Il s’agit d’un scénario courant, même dans un grand nombre de didacticiels. Nous avons une table Sales dans notre modèle de données qui contient les données de transaction, et il existe une relation entre la table Sales et la table Product Category. Dans la table Sales, nous avons une colonne qui comporte les montants des ventes et une autre colonne qui comporte des coûts.

Nous pouvons créer une colonne calculée qui calcule un montant marge pour chaque ligne en soustrayant des valeurs contenues dans la colonne Val à partir des valeurs de la colonne SalesAmount, comme suit :

Colonne Bénéfices dans la table Power Pivot

À présent, nous pouvons créer un tableau croisé dynamique et faites glisser le champ catégorie de produit à des colonnes et notre nouveau champ marge dans la zone valeurs (une colonne dans une table dans PowerPivot est un champ dans la liste de champs de tableau croisé dynamique). Le résultat est une mesure implicite nommée Somme de Profit. Il est un montant agrégé des valeurs de la colonne profit pour chacune des catégories de produits différentes. Notre résultat ressemble à ceci :

Tableau croisé dynamique simple

Dans ce cas, Profit uniquement compréhensible en tant que champ dans valeurs. Si vous deviez placer marge dans la zone colonnes, notre tableau croisé dynamique se présente comme ceci :

Tableau croisé dynamique sans valeurs utiles

Notre champ marge ne fournit aucune information utile lorsqu’il est placé dans les zones de colonnes, des lignes ou des filtres. Il est donc comme une valeur d’agrégation dans la zone valeurs.

Ce que nous avons fait consiste à créer une colonne nommée bénéficiaire qui calcule une marge pour chaque ligne dans la table Sales. Nous avons ajouté puis marge dans la zone valeurs de notre tableau croisé dynamique, la création automatique d’une mesure implicite, où un résultat est calculé pour chacune des catégories de produits. Si vous pensez que nous vraiment calculé profit de nos catégories de produits à deux reprises, vous sont corrects. Nous calculée tout d’abord une marge pour chaque ligne dans la table Sales, et nous avons ajouté puis bénéfices dans la zone VALUES dans lequel il a été agrégé pour chacune des catégories de produits. Si vous pensez également que nous avons n’a pas été réellement besoin pour créer la colonne calculée Profit, vous pouvez également correct. Mais, puis comment nous calculer notre marge sans créer une colonne calculée bénéficiaire ?

La marge, serait vraiment mieux calculé comme une mesure explicite.

Pour l’instant, nous allons laisser notre colonne calculée Profit de la table Sales et catégorie de produit dans les colonnes et marge dans les valeurs de notre tableau croisé dynamique, pour comparer les résultats.

Dans la zone de calcul de la table Sales, nous allons créer une mesure nommée Bénéfice Total(pour éviter les conflits de noms). Mais au final, il donnera les mêmes résultats que ce que nous l’avons fait précédemment, mais sans une colonne calculée de marge.

Tout d’abord, nous sélectionnez la colonne SalesAmount dans la table Sales, puis sur Somme automatique pour créer une Somme de SalesAmountexplicitemesure. N’oubliez pas, une mesure explicite fait partie d’une nous créer dans la zone de calcul d’un tableau dans PowerPivot. Nous faire de même pour la colonne val. Nous allons renommer ces Total SalesAmount et Total Val pour faciliter leur identification.

Bouton Somme automatique dans Power Pivot

Nous créons une autre mesure avec cette formule :

Total des bénéfices : = [ Total SalesAmount]-[Total Val]

Remarque : Nous pouvons également écrire notre formule en tant que Total Profit:=SUM([SalesAmount]) - SUM([COGS]), mais en créant des mesures SalesAmount Total et la variation stock Total distincts, nous pouvons les utiliser dans notre tableau croisé dynamique trop et nous pouvons les utiliser en tant qu’arguments dans toutes sortes d’autres formules de mesure.

Après avoir modifié le format de notre nouvelle mesure bénéfice Total sur devise, nous pouvons l’ajouter à notre tableau croisé dynamique.

Tableau croisé dynamique

Vous pouvez voir que notre nouvelle mesure bénéfice Total renvoie le même résultat que de créer une colonne calculée bénéfices et en le plaçant dans les valeurs. La différence est notre bénéfice Total mesure est beaucoup plus efficace et rend notre modèle de données plus clair et plus légers car nous allons calculer en temps et uniquement pour les champs sélectionnons pour notre tableau croisé dynamique. Nous n’avez pas particulièrement besoin cette colonne calculée Profit une fois tous les.

Pourquoi cette dernière partie est-il important ? Colonnes calculées ajouter des données au modèle de données, et données occupent de mémoire. Si nous actualiser le modèle de données, des ressources de traitement sont également nécessaires pour recalculer toutes les valeurs de la colonne Profit. Nous n’ayez pas besoin de prendre des ressources à ceci étant donné que nous voulons vraiment calculer notre marge quand je sélectionne les champs nous voulons dans le tableau croisé dynamique, comme les catégories de produits, les bénéfices région, ou par date.

Examinons un autre exemple. Une où une colonne calculée génère des résultats qui s’affichent au premier coup de œil correctes, mais...

Dans cet exemple, nous voulons calculer les montants des ventes sous forme de pourcentage du total des ventes. Nous créons une colonne calculée, nommée % des ventes dans notre table Sales, comme suit :

Colonne calculée % des ventes

Notre formules états : pour chaque ligne dans la table Sales, divisez la quantité de la colonne SalesAmount par la somme de tous les montants de la colonne SalesAmount.

Si nous créer un tableau croisé dynamique et ajouter catégorie de produit à des colonnes et sélectionnez la nouvelle colonne % des ventes pour mettre en valeur, nous obtenez une somme total des pourcentages des ventes pour chacun de nos catégories de produits.

Tableau croisé dynamique affichant la somme des pourcentages des ventes pour les catégories de produits

OK. Ce test vous convient jusqu’ici. Toutefois, nous allons ajouter un segment. Nous ajoutons année civile et puis sélectionnez une année. Dans ce cas, nous allons sélectionner 2007. C’est ce que nous obtenez ;

Résultat incorrect de la somme des pourcentages des ventes dans le tableau croisé dynamique

À première vue, cela peut apparaître toujours correct. Toutefois, notre doivent vraiment le total des pourcentages 100 %, car nous voulons savoir pourcentage du total des ventes pour chacun de nos catégories de produits pour 2007. Donc cause ?

Notre colonne % des ventes calculé un pourcentage pour chaque ligne qui représente la valeur de la colonne SalesAmount divisée par la somme de toutes les valeurs de la colonne SalesAmount. Valeurs dans une colonne calculée sont résolus. Ils sont un résultat immuable pour chaque ligne du tableau. Quand nous avons ajouté % des ventes à notre tableau croisé dynamique a été agrégée sous forme d’une somme de toutes les valeurs de la colonne SalesAmount. Somme de toutes les valeurs dans la colonne % des ventes seront toujours 100 %.

Conseil : Veillez à lire le contexte dans les formules DAX. Il propose une bonne compréhension de contexte de niveau de ligne et contexte de filtre, ce qui correspond à ce que nous apportions décrivant ici.

Nous pouvons supprimer notre % de colonne calculée de ventes, car il ne va pas pour nous aider à. À la place, nous allons créer une mesure qui calcule correctement notre pourcentage du total des ventes, indépendamment des filtres segments appliqués.

N’oubliez pas la mesure TotalSalesAmount que nous avons créé précédemment, celui qui additionne simplement la colonne SalesAmount ? Nous avons utilisé comme argument dans notre mesure bénéfice Total, et nous allons utiliser en tant qu’argument dans notre nouveau champ calculé.

Conseil : Création de mesures explicites comme SalesAmount Total et Val Total ne sont pas uniquement utiles eux-mêmes dans un tableau croisé dynamique ou un état, mais ils sont également utiles en tant qu’arguments dans d’autres mesures lorsque vous avez besoin du résultat en tant qu’argument. Vos formules fait désormais plus efficaces et plus facile à lire. Il s’agit de bonnes données relatives aux exercices pratiques de modélisation.

Nous créons une nouvelle mesure avec la formule suivante :

% du Total des ventes : =([Total SalesAmount]) / calculer ([Total SalesAmount], ALLSELECTED())

Cette formule indique : divisez le résultat de Total SalesAmount par la somme des SalesAmount sans filtre de colonne ou de ligne autres que ceux définis dans le tableau croisé dynamique.

Conseil : Veillez à en savoir plus sur les fonctions CALCULATE et ALLSELECTED dans la référence DAX.

À présent, si nous ajoutons notre nouveau % du Total des ventes dans le tableau croisé dynamique, la bonne :

Résultat correct de la somme des pourcentages des ventes dans le tableau croisé dynamique

Qui recherche une meilleure qualité. Maintenant notre % du Total des ventes pour chaque catégorie de produit est calculée sous forme de pourcentage du total des ventes pour l’année 2007. Si nous sélectionnons un exercice différent, ou plus d’un an du segment CalendarYear, nous obtenir des pourcentages nouvelle pour nos catégories de produits, mais notre total général correspond toujours à 100 %. Nous pouvons également ajouter d’autres segments et des filtres. Notre % du Total Sales mesure produira toujours un pourcentage du total des ventes quels que soient les segments ou filtres appliqués. Avec les mesures, le résultat est toujours calculé en fonction du contexte déterminé par les champs dans les lignes et colonnes, ainsi que par les filtres ou les segments sont appliquées. Il s’agit de la puissance des mesures.

Voici quelques indications pour vous aider lors du choix ou non une colonne calculée ou une mesure correspond à un besoin spécifique de calcul :

Utiliser des colonnes calculées

  • Si vous souhaitez que vos nouvelles données apparaissent dans les lignes, colonnes, ou dans les filtres dans un tableau croisé dynamique, ou sur un axe, légende ou mosaïque par dans une visualisation Power View, vous devez utiliser une colonne calculée. Comme normal des colonnes de données, des colonnes calculées peuvent être utilisés comme un champ dans une zone de, et s’ils sont numériques qu’ils peuvent être regroupées dans les valeurs trop.

  • Si vous souhaitez que vos nouvelles données à une valeur fixe pour la ligne. Par exemple, vous avez une table de dates avec une colonne de dates, et à une autre colonne qui contient uniquement le nombre de mois. Vous pouvez créer une colonne calculée qui calcule uniquement le nombre de mois à partir des dates dans la colonne Date. Par exemple, = MONTH('Date'[Date]).

  • Si vous souhaitez ajouter une valeur de texte pour chaque ligne dans un tableau, utilisez une colonne calculée. Champs avec les valeurs de texte ne peuvent jamais être agrégées dans les valeurs. Par exemple, =FORMAT('Date'[Date],"mmmm") nous donne le nom du mois pour chaque date dans la colonne de Date dans la table de dates.

Utilisez des mesures

  • Si le résultat de votre calcul doivent toujours être dépendant sur les autres champs que vous sélectionnez dans un tableau croisé dynamique.

  • Si vous avez besoin effectuer des calculs plus complexes, comme calculer un nombre en fonction d’un filtre quelconque, ou calculer une année année ou variation, utilisez un champ calculé.

  • Si vous souhaitez conserver la taille de votre classeur au minimum et optimiser ses performances, créez autant de vos calculs en tant que mesures que possible. Dans de nombreux cas, toutes vos calculs peuvent être mesures, considérablement réduire la taille du classeur et l’accélération intervalle d’actualisation.

Conserver dans l’esprit, rien de création de colonnes calculées, comme nous l’avons fait notre colonne Profit et puis l’agrégation dans un tableau croisé dynamique ou un état. Il est en réalité un moyen simple et vraiment bonne pour en savoir plus sur et créer vos propres calculs. Au fur et à mesure du votre comprendre le fonctionnement de ces deux extrêmement puissantes fonctionnalités de Power Pivot, vous souhaiterez créer le modèle de données plus efficace et précis, que vous pouvez. Nous espérons que ce que vous avez appris ici permet. Il existe d’autres vraiment ressources utiles, qui peuvent vous aider trop. Voici quelques : Centre de ressources DAXcontexte dans les formules DAXet les agrégations dans PowerPivot. Et, pendant l’a un peu plus avancées, visant à comptables et financiers professionnels, l’échantillon et de pertes modélisation et analyse des données avec Microsoft PowerPivot dans Excel est chargée avec des exemples de formules et de modélisation de données correctement.

Remarque : 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.

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×