Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2942 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Difficultés création de graphique croisé dynamique VBA

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Difficultés création de graphique croisé dynamique VBA

n°2252156
crookix
Posté le 03-03-2015 à 08:43:46  profilanswer
 

Bonjour,
 
Je suis actuellement sur une macro permettant entre autres d'ouvrir un nouveau classeur, d'y copier une plage de donnée destiné à fournir un TCD ainsi qu'un graphique associé.
 
La macro fonctionne parfaitement jusqu'à l'ouverture du graphique, qui me propose l'erreur : "La méthode Range de l'objet Worsheet a échoué", ou dans une autre configuration me sort un graphique dont la plage de donnée n'est pas celle configurée mais celle de l'onglet où se situe le bouton permettant d’exécuter la macro.
 
Merci pour votre aide !  
 
'Affectation du TCD à la feuille "taux de Solde pda export"
Workbooks("Taux de Solde PDA.xls" ).Worksheets("Taux de solde PDA export" ).Activate
 
Set wshTCD = Worksheets("Taux de solde PDA export" )
 
'Suppresion de tous les TCD existants de la feuille
For Each PvtTCD In wshTCD.PivotTables
PvtTCD.TableRange2.Clear
Next PvtTCD
 
 'Ajout d'un TCD sur la feuille "Taux de Solde PDA export"
    Set PvtTCD = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:="Data filtrées!R1C1:R" & X & "C17" ) _
                .CreatePivotTable(TableDestination:=wshTCD.Range("B5" ), TableName:="Taux de Solde PDA" )
 
 
                'Ajout des champs au TCD
       With PvtTCD
 
        'Ajout d'une Ligne
 
        With .PivotFields("Agence Dépannage" )
            .Orientation = xlRowField
            .Position = 1
        End With
         
        With .PivotFields("Chargé de travaux" )
            .Orientation = xlRowField
            .Position = 2
        End With
 
 
        'Ajout d'une Colonne
        With .PivotFields("Solde" )
            .Orientation = xlColumnField
            .Position = 1
        End With
 
        'Ajout d'une Valeur Solde
        With .PivotFields("Solde" )
            .Orientation = xlDataField
        End With
 
'        'Ajout d'une Ligne
'        With .PivotFields("Centre" )
'            .Orientation = xlPageField
'            .Position = 1
'        End With
 
        'Ajout d'une Ligne
        With .PivotFields("Mois" )
            .Orientation = xlPageField
            .Position = 1
        End With
    End With
 
    '*********************création du Graphique croisé dynamique associé*********************
 
 
With Workbooks("Taux de Solde PDA.xls" ).Worksheets("Taux de solde PDA export" )
 
    ActiveSheet.Shapes.AddChart.Select
    ActiveChart.SetSourceData Source:=Range("'Taux de solde PDA export'!$B$5:$G$174" )
    ActiveWorkbook.ShowPivotChartActiveFields = True
    ActiveChart.ChartType = xlColumnStacked
 
End With

mood
Publicité
Posté le 03-03-2015 à 08:43:46  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Difficultés création de graphique croisé dynamique VBA

 

Sujets relatifs
Recupération de chk dynamiqueVba: problème de récupération des octets
Des chiffres et des lettres VBA[Divers] Conseil création site web
création d'un bouton parcourircréation d'un bouton parcourir
[VBA] Inserer des caractères en décaler dans une celluleAide VBA comparaison de deux fichiers Excel
IHM d'une application VCL paramétrable par l'utilisateur ? 
Plus de sujets relatifs à : Difficultés création de graphique croisé dynamique VBA


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR