Bonjour, je réalise actuellement une macro dans le cadre de mon travail. J'ai une feuille qui contient les données relatives a une machine (l'utilisateur, les temps d'utilisations, etc.). Il est possible d'entrer une plage de date afin de filtrer les informations.
Mon but est de récupérer cette plage afin de pouvoir créer un tableau croisé dynamique (TCD). Voici mon code :
Le problème, c'est que quand je lance la macro ça plante au moment de la création du TCD :
sauf que je ne comprends pas ce que je dois modifier.
Pourriez-vous m'éclairer ?
Mon but est de récupérer cette plage afin de pouvoir créer un tableau croisé dynamique (TCD). Voici mon code :
VB:
'Selectionner la plage
'Selection de la feuille
Sheets(prefixe & MachinesPlages(i, 1)).Select
'On calcule le nombre de colonne
Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
larg = Selection.Count
'Le nombre de lignes dans la plage (pas vraiment utile pour l'instant
Range("A" & DebutPlage & ":A" & FinPlage).Select
longueur = Selection.Count
'Créer le TCD correspondant à la machine
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
ActiveWorkbook.Sheets(prefixe & MachinesPlages(i, 1)).Range(Cells(DebutPlage, 1), Cells(FinPlage, larg)), Version:=xlPivotTableVersion15).CreatePivotTable _
TableDestination:="Options avec filtre!R1C1:R1C" & (i + 5), TableName:="TCD" & MachinesPlages(i, 1), _
DefaultVersion:=xlPivotTableVersion15
Le problème, c'est que quand je lance la macro ça plante au moment de la création du TCD :
sauf que je ne comprends pas ce que je dois modifier.
Pourriez-vous m'éclairer ?