Condition dans champ calculé TCD

Bebe xl

XLDnaute Nouveau
Bonjour à tous,

J'ai une petite question sur les TCD: est-il possible de faire une condition basée sur des infos du tableau source dans un "Calculated field" d'un TCD? :confused:

En fait je cherche à faire la somme du coût anticipé en tant que "vraie" colonne du TCD en comptant à la fois les estimations (Final Cost Estimate) pour les modifications non finalisées et les et les coûts décidés (Agreed Final Cost) sachant que dans le remplissage de mon tableau source j'ai 3 situations:
- Cout anticipé=Estimations
- Cout anticipé= Décidé
- Cout anticipé=Estimation+Décidé

Pour vous aidez à comprendre j'ai fait un faux petit tableau. Ne tenez pas en compte les "Status" je ne les ai mis que pour donner une vraie idée de comment mon TCD est construit et doit être réparti.

Merci d'avance pour votre aide! :D

Bonne journée!

Bebe xl
 

Pièces jointes

  • Test XL.xlsx
    26.6 KB · Affichages: 47

chris

XLDnaute Barbatruc
Re : Condition dans champ calculé TCD

Bonjour

Dans les champs calculés les conditions, comme les calculs, ne peuvent porter que sur la somme de valeurs, pas sur l'info de chaque ligne.

Comme suggéré par gosselin il faut faire le calcul en amont.
 

Bebe xl

XLDnaute Nouveau
Re : Condition dans champ calculé TCD

Bonjour,

Merci de vos réponses. Il me semblait bien que je n'avais pas d'autre choix que d'ajouter une colonne dans le tableau source mais je voulais être sûre de ne pas passer à côté d'une manoeuvre!

Bonne journée.

Bebe xl
 

Celeda

XLDnaute Barbatruc
Re : Condition dans champ calculé TCD

Bonjour tout le monde,

Chris,

Pour les conditions, c'est ok - mais là s'il s'agit simplement d'ajouter les deux colonnes suivantes :
Our Final Cost Estimate Agreed Final Cost ==> égal Cout anticipé,
le champ calculé est possible d'être intégré directement dans le tcd.

Non ??
 

Pièces jointes

  • TCDTest XL.xlsx
    28.5 KB · Affichages: 51

Bebe xl

XLDnaute Nouveau
Re : Condition dans champ calculé TCD

Bonjour Celeda,

Mon problème est que notre Cout Anticipé Global est la somme des 3 situations puisque pour certaines modifications il est égal à notre "Our Final Cost Estimate", parfois à l'Agreed Final Cost (avec les valeurs estimées qui restent notées dans le tableau pour des raisons de traçabilité) et parfois à la somme des deux (quand les modifications n'ont été validées qu'en partie). Je cherchais donc à faire un calculated field du type SI([Agreed Final Cost]<>0, [Agreed Final Cost], [Our Final Cost Estimate]) intégré automatiquement dans le TCD car le tableau source a beaucoup de ligne et que je ne peux pas faire du cas par cas.

Merci! :D

Bonne journée.

Bebe xl
 

chris

XLDnaute Barbatruc
Re : Condition dans champ calculé TCD

Bonjour
Coucou Celeda :)

...Pour les conditions, c'est ok - mais là s'il s'agit simplement d'ajouter les deux colonnes suivantes :
Our Final Cost Estimate Agreed Final Cost ==> égal Cout anticipé,
le champ calculé est possible d'être intégré directement dans le tcd.

Non ??

Si on avait une somme dans le TCD correspondant à une seule ligne de la source, oui car la somme = l'unité.

Mais sinon le SI va comparer la somme de l'un et la somme de l'autre, ce qui n'est pas correct.

Exemple sur des ventes, si tu donnes une commission ou ristourne basée sur un seuil de vente : montant>5000, cela va comparer la somme des montants à 5000 et non le montant de chaque facture.
 

Celeda

XLDnaute Barbatruc
Re : Condition dans champ calculé TCD

Bonjour,

Hi Chris, et oui comme d'hab!!! il faut faire évoluer cela - on a du boulot!!! lol!!

Merci comme toujours pour tes éclairages.

A propos, d'éclairage, j'ai essayé de trouver une soluce pour un autre tcd déposé sur un fil resté sans réponse,
mais c'était pas évident de comprendre : en fait il s'agit de récupérer automatiquement la valeur maxi et d'y apposer le numéro correspondant - avec la fonction "Rang..." on y arrive sauf qu'il faut inverser les colonnes (ce que le demandeur ne souhaite pas apparemment - c'est une histoire de tiercé)- et comme en plus, il s'agit de rapporter tout cela selon un index (1-2-3.....) collé au TCD........bref, j'aurai voulu aussi y coller un index interne au tcd en fonction des valeurs décroissantes.....mais là c'est flop!!!! conclusion y a vraiment encore du boulot à faire avec les tcd.
 

chris

XLDnaute Barbatruc
Re : Condition dans champ calculé TCD

Bonjour

Oui je viens de répondre à ce fil. Je n'ai pas tout compris à ses formules.

Depuis 2010 on a Rang dans les nouveaux calculs TCD mais sous réserve de bosser en xlsx... et comme il y a des ex-equo cela ne donne pas de 1 à 20 dans ce cas précis. Bizzarement en plus cela ne classe pas comme la fonction RANG d'Excel...
 
Dernière édition:

Bebe xl

XLDnaute Nouveau
Re : Condition dans champ calculé TCD

Bonjour à tous,

Je me permets de relancer la discussion afin de vous demander si je peux arriver à mon résultat espéré en faisant un TCD par macro? En retravaillant des formules VBA trouvées sur plusieurs sites je suis parvenue à faire un premier jet comme ça :

Sub CreatePivot()

Dim objTable As PivotTable, objField As PivotField

ActiveWorkbook.Sheets("Register").Select
Range("A1").Select

Set objTable = Essai1.PivotTableWizard

Set objField = objTable.PivotFields("Type")
objField.Orientation = xlRowField
Set objField = objTable.PivotFields("Status")
objField.Orientation = xlRowField
Set objField = objTable.PivotFields("Contractor Reference Cost")
objField.Orientation = xlDataColumnField
objField.Function = xlSum
objField.NumberFormat = "$ #,##0"
Set objField = objTable.PivotFields("Contractor Final Cost Estimate ")
objField.Orientation = xlDataColumnField
objField.Function = xlSum
objField.NumberFormat = "$ #,##0"

Set objField = objTable.PivotFields("Last Version2")
objField.Orientation = xlPageField

End Sub

Mais je ne suis qu'une débutante en matière d'écriture de VBA donc je ne sais pas si ça va marcher et surtout comment intégrer des "Calculated Fields" avec des fonction IF? Quelqu'un aurait-il une explication/solution à me donner svp?

En vous remerciant par avance de votre aide!

Bonne journée :D

Bebe xl
 

gosselien

XLDnaute Barbatruc
Re : Condition dans champ calculé TCD

Bonjour,
je pense que, avant de te lancer dans les macros TCD, il faut un peu comprendre les TCD (ce n'est pas péjoratif ce que je dis là) et voir si à la place, tu ne peux pas faire 2 tcd et la mise à jour (actualiser en 2007-2010) de ceux-ci...Sauf si tu connais déjà vba.
C'est juste une suggestion :)

P.
 

chris

XLDnaute Barbatruc
Re : Condition dans champ calculé TCD

Bonjour

Pour compléter la réponse de Gosselin, que je salue, le VBA ne permet pas de modifier le fonctionnement d'Excel, juste de l'automatiser.

Donc que le champ calculé soit fait manuellement ou par VBA, il ne pourra donner un résultat différent...
 

Bebe xl

XLDnaute Nouveau
Re : Condition dans champ calculé TCD

Bonjour à tous les deux et merci pour vos réponses.

J'avais déjà fait des VBA dans le passé mais jamais pour créer des TCD. Je cherchais en fait à savoir si ma fonction IF, qui n'avais pas marché en tant que Calculated Field dans mon TCD car elle calculait sur les valeurs du TCD, aurait pu fonctionner en passant par la VBA pour qu'elle calcule/prenne en compte non plus les valeurs du TCD mais celle du tableau source directement.

Merci en tous cas pour votre aide, je continue à chercher une solution à mon problème, je ne desespère pas ;)

Bonne journée

Bebe xl
 

chris

XLDnaute Barbatruc
Re : Condition dans champ calculé TCD

Re

La solution, comme dit au post #2 c'est d'ajouter les données dans la source...

Sinon basculer les données sur PowerPivot mais si c'est juste pour éviter une colonen en amont, le jeu en vaut-il la chandelle ?
 

Discussions similaires

Statistiques des forums

Discussions
312 237
Messages
2 086 488
Membres
103 233
dernier inscrit
Ange.wil