Plage variable dans Pivot table

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

choffraym

XLDnaute Nouveau
Bonjour,
Pourriez-vous me donner la syntaxe exacte de ce qui suit :

wkB.Sheets("per CostCenter").Copy before:=wbk.Sheets(1)
ActiveSheet.PivotTables("PivotTable4").ChangePivotCache ActiveWorkbook. _
PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"FEUILLE1!R1C1:R10000C19" _

J'aimerais remplacer FEUILLE1!R1C1:R10000C19 par
Feuille1.Range("a1", Range("a1").End(xlDown).End(xlToRight))

Merci d'avance.
Bien a vous.
Mike
 
Bonjour
Si tu connais la dernière colonne (S dans ton exemple):
VB:
Sub test()
With Feuil1
    .Range(.Range("a1"), .Range("a1").End(4)(1, 19)).Select
End With
End Sub

Sans connaitre la dernière cellule de la plage (ni la ligne, ni la colonne)

Code:
Sub test_2()
Dim x As Range, y As Range
With Feuil1
    Set x = .Cells.Find("*", .Cells(.Rows.Count, .Columns.Count), xlValues, , 1, 2, 0)
    Set y = .Cells.Find("*", .Cells(.Rows.Count, .Columns.Count), xlValues, , 2, 2, 0)
    .Range(.Cells(1, 1), .Cells(x.Row, y.Column)).Select
    End With
End Sub

Les "Select" ne sont là que pour exemple.

Cordialement
 
Bonjour
Bonjour
Si tu connais la dernière colonne (S dans ton exemple):
VB:
Sub test()
With Feuil1
    .Range(.Range("a1"), .Range("a1").End(4)(1, 19)).Select
End With
End Sub

Sans connaitre la dernière cellule de la plage (ni la ligne, ni la colonne)

Code:
Sub test_2()
Dim x As Range, y As Range
With Feuil1
    Set x = .Cells.Find("*", .Cells(.Rows.Count, .Columns.Count), xlValues, , 1, 2, 0)
    Set y = .Cells.Find("*", .Cells(.Rows.Count, .Columns.Count), xlValues, , 2, 2, 0)
    .Range(.Cells(1, 1), .Cells(x.Row, y.Column)).Select
    End With
End Sub

Les "Select" ne sont là que pour exemple.

Cordialement

Bonjour Efge,
Merci pour votre retour.
Ca me convient pour une plage variable mais comment est-ce que je traduis ca dans mon code apd de
SourceData:= _
"FEUILLE1!R1C1:R10000C19" _
Merci d'avance.
bat.
Mike
 
Re
Je ne t'ai donné que la façon de trouver la plage.
Si tu sais créer une source Data tu mets :
SourceData:= .Range(.Cells(1, 1), .Cells(x.Row, y.Column))

Il faut bien utiliser le With / End With

Cordialement
 
Re
Je ne t'ai donné que la façon de trouver la plage.
Si tu sais créer une source Data tu mets :
SourceData:= .Range(.Cells(1, 1), .Cells(x.Row, y.Column))

Il faut bien utiliser le With / End With

Cordialement

Alors, je dois louper qqch alors pcq quand je mets :

ActiveSheet.PivotTables("PivotTable4").ChangePivotCache ActiveWorkbook. _
PivotCaches.Create(SourceType:=xlDatabase, SourceData:=Sheets("SDWORX").Range(Cells(1, 1), Cells(x.Row, y.Column)) _
, Version:=6)

Ca ne marche pas... :-(
Re
Je ne t'ai donné que la façon de trouver la plage.
Si tu sais créer une source Data tu mets :
SourceData:= .Range(.Cells(1, 1), .Cells(x.Row, y.Column))

Il faut bien utiliser le With / End With

Cordialement
Super. Merci. C'est en ordre.. Bonne jounee.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
2 K
Retour