Tableau dynamique en VBA

Bonjour ,

j aimerai réaliser un tableau dynamique sur un nouveau onglet (appellé "feuil1") avec VBA

a l aide des colonne C et V

du "tableau 1" (voir ci dessous )

merci pour les personnes qui m apporteront de leurs aide.

tableau 1

Bonjour

Tu devrais donner un peu plus de détail sur ce que tu souhaites et joindre ton fichier.

Bye !

j aimerai obtenir le nombre "avance" ou de "report ou annul " "moins de 4h "ou "plus de 4h" par fournisseur (colonne 1)

je vous met le résultat ci dessous

capture3
9classeur3.xlsx (24.50 Ko)

Bonjour

Il est généralement peu utile de réaliser des TCD en VBA puisqu'il suffit d'actualiser un TCD pour traiter de nouvelles données...

Mais si tu y tiens commence déjà avec l'enregistreur de macros (quoique sur 2007 il est pas mal bugué sur les TCD si j'ai bonne mémoire).

Sans exemple représentatif personne ne fera rien ici je pense...

je viens de vous mettre mon fichier

Tu n'as pas joint ton fichier mais une copie d'écran : je ne peux rien en faire;

J'aimerais aussi que tu donnes un exemple de ce que tu veux obtenir...

Bye !

ce que je veux obtenir est la capture d'ecran

10classeur3.xlsx (24.50 Ko)

Bonjour

Entre la 1ère copie d'écran et le fichier, pas sûr de le représentativité : il y avait 20 colonnes de plus ce qui qui n'est pas neutre pour du code.

As-tu essayé l'enregistreur ?

oui j 'ai juste pas mis le tableau entier

j'ai commence le code mais celui-ci ne fonctionne pas

' CREERTCD Macro

'

' Sélection des données

Sheets("PAR CNUF").Select

Columns("A:B").Select

' Création du TCD

Sheets.Add

ActiveWorkbook.Worksheets("feuil1").PivotTables( _

"Tableau croisé dynamique7").PivotCache.CreatePivotTable TableDestination:= _

"Feuil1!L3C1", TableName:="Tableau croisé dynamique1", DefaultVersion:= _

xlPivotTableVersion12

Sheets("Feuil1").Select

Cells(3, 1).Select

' Actualiser

Range("C9").Select

ActiveSheet.' CREERTCD Macro

'

'

bonjour

oui j 'ai juste pas mis le tableau entier

j'ai commence le code mais celui-ci ne fonctionne pas

' CREERTCD Macro

'

' Sélection des données

Sheets("PAR CNUF").Select

Columns("A:B").Select

' Création du TCD

Sheets.Add

ActiveWorkbook.Worksheets("feuil1").PivotTables( _

"Tableau croisé dynamique7").PivotCache.CreatePivotTable TableDestination:= _

"Feuil1!L3C1", TableName:="Tableau croisé dynamique1", DefaultVersion:= _

xlPivotTableVersion12

Sheets("Feuil1").Select

Cells(3, 1).Select

' Actualiser

Range("C9").Select

ActiveSheet.' CREERTCD Macro

'

'

RE

Tu n'as pas placé de champs dans ton TCD ?

Bonjour,

Un exemple de ce que tu peux faire avec les données communiquées.

* Les données ont été mises sous de forme de tableau.

Cdlt.

15classeur3.xlsm (28.75 Ko)
Option Explicit

Public Sub Create_PT()
Dim wb As Workbook
Dim wsPT As Worksheet
Dim rng As Range
Dim PTCache As PivotCache
Dim PT As PivotTable

    Set wb = ActiveWorkbook

    Application.DisplayAlerts = False

    On Error Resume Next
    wb.Worksheets("TCD").Delete
    On Error GoTo 0

    Application.DisplayAlerts = True

    With wb
        Set rng = .Worksheets("Données").ListObjects(1).Range
        Set PTCache = .PivotCaches.Create(xlDatabase, rng)
        Set wsPT = .Worksheets.Add
    End With

    wsPT.Name = "TCD"

    Set PT = PTCache.CreatePivotTable(wsPT.Cells(3, 1), "TCD_1")

    With PT
        .ManualUpdate = True
        .AddFields RowFields:="Fournisseur", ColumnFields:=("indic segmenté")
        With .PivotFields("indic segmenté")
            .Orientation = xlDataField
            .Function = xlCount
            .Caption = "NB indic segmenté"
        End With
        .RowAxisLayout xlTabularRow
        .TableStyle2 = "PivotStyleLight1"
        .ManualUpdate = False
    End With

    ActiveWindow.DisplayGridlines = False

End Sub

merci c'est exactement se que je voulais

Rechercher des sujets similaires à "tableau dynamique vba"