TCD et VBA

Bonjour à tous,

J'ai fait un macro qui copie des colonnes d'un TCD pour les coller ailleurs. Cette partie fonctionne très bien.

Cependant il se peux que la colonne n'existe pas pour le filtre que j'active.

Par exemple

  ActiveWorkbook.ShowPivotTableFieldList = False
    ActiveSheet.PivotTables("Tableau croisé dynamique7").PivotSelect _
        "'Catégories de risques'[Transverse]", xlDataAndLabel, True
    Application.CutCopyMode = False
    Selection.Copy

Je lui demande de copier la colonne"transverse", mais il se peux qu'elle n'existe pas avec mes filtres. Ma macro va alors planter. Est ce qu'il existe une solution pour qu'elle ignore cette étape si jamais il n'y a pas de colonne "Transverse" ?

Je vous remercie

Ajoute une condition If Existe avant, afin d'être certain que ta colonne existe. Si ce n'est pas le cas, le système ne rencontre pas le problème du coup.

bonjour,

essaie ceci

  
on error goto traiterreur
ActiveWorkbook.ShowPivotTableFieldList = False
    ActiveSheet.PivotTables("Tableau croisé dynamique7").PivotSelect _
        "'Catégories de risques'[Transverse]", xlDataAndLabel, True
    Application.CutCopyMode = False
    Selection.Copy
ici:
 on error goto 0
 la suite de ton code
 exit sub
traiterreur:
 resume ici
end sub

Super je vais essayer vos solutions ! merci

Bonjour,

A tester pour le principe.

Cdlt.

Option Explicit

Public Sub DEMO()
Dim ws As Worksheet
Dim pt As PivotTable
Dim strPF As String

    Set ws = ActiveSheet: Set pt = ws.PivotTables(1)
    strPF = "Transverse"

    On Error Resume Next
    pt.PivotSelect strPF, xlLabelOnly, True
    If Err.Number = 0 Then
        pt.PivotSelect strPF, xlDataAndLabel, True
        MsgBox "suite procédure"
    Else
        MsgBox "champ inconnu"
        GoTo exit_Handler
    End If

exit_Handler:
    On Error GoTo 0
    Set pt = Nothing: Set ws = Nothing
    Exit Sub

End Sub
Rechercher des sujets similaires à "tcd vba"