Menu

Modifier un tableau croisé dynamique [Fermé]

Messages postés
9
Date d'inscription
mercredi 20 novembre 2013
Statut
Membre
Dernière intervention
12 janvier 2015
- - Dernière réponse : Valooouuu
Messages postés
9
Date d'inscription
mercredi 20 novembre 2013
Statut
Membre
Dernière intervention
12 janvier 2015
- 31 juil. 2014 à 12:08
Bonjour à tous,

J'ai un petite question à vous poser et j'espère que quelqu'un pourra m'aider :)

Voila j'ai créer un tableau croisé dynamique pour avoir l'historique de mes ventes. Ce tableau me sert à déterminer les quantités à commander pour la prochaine année.

Seulement, je voudrais changer directement des données dans mon croisé dynamique, par exemple, si je pense vendre plus de référence d'un article, allez changer directement la quantité à commander dans mon tableau, et si possible, qu'elle se mette en rouge.

Est ce que quelqu'un sait quelle macro je dois écrire pour cela? J'ai déjà essayé une mais elle ne marche pas.

Merci infiniment de votre aide,

Cordialement,
Afficher la suite 

2 réponses

Messages postés
140
Date d'inscription
dimanche 15 mars 2009
Statut
Membre
Dernière intervention
20 janvier 2018
29
0
Merci
Tu modifie les données dans ton tableau source de chiffre , ensuite tu vas sur la page de tableau croisée dynamique et en haut tu vas dans l'onglet Creation ==> Selectionner des données et tu réselectionne les données y compris les nouvelles .

Pour les couelur tu selectionne les données et dans Accueil selectionne Mise en forme conditionnelle puis Nuance des couleurs .
Messages postés
9
Date d'inscription
mercredi 20 novembre 2013
Statut
Membre
Dernière intervention
12 janvier 2015
0
Merci
En fait justement je veux changer les données dans le tableau croisé dynamique sans changé les données source. Je sais que c'est possible mais je n'y arrive pas. J'ai trouvé une macro sur intrnet mais elle ne fonctionne pas :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Intersect(Target, Sheets("TCD1").PivotTables(1).DataBodyRange) Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
ligne = Columns(Target.Column).Find("", Target, xlValues, xlWhole, xlByRows, xlPrevious).Row
nom = Cells(ligne, 1)
ref = Cells(Target.Row, 1)
With Sheets("Source")
valeur = InputBox("Entrez la nouvelle valeur")
If Not IsNumeric(valeur) Then Exit Sub
..Cells(1, 12).ClearContents
.Cells(1, 12).Formula = "=sumproduct((A1:A11000=""" & nom & """)*(C1:C11000=""" & ref & """)*row(A1:A11000))"
lig = .Cells(1, 12)
col = Target.Column + 5


.Cells(col, lig) = CDbl(valeur)
End With
ThisWorkbook.RefreshAll
End Sub