pivottable - VB/VBA/VBS - Programmation
Marsh Posté le 24-02-2005 à 20:49:32
bonsoir,
essaie voir ça :
...
Dim essai As Range
Range(Cells(1, 1).End(xlDown), Cells(1, 1).End(xlToRight)).Select
Set essai = Selection
...
Ok ?
Marsh Posté le 28-02-2005 à 09:37:40
désolé pour le retard!!!
j'ai trouvé une autre solution !!!!
j'ai un problème avec une autre fonction: la fonction vlookup :
Dim essai As Range
Range(Cells(1, 1).End(xlDown), Cells(1, 1).End(xlToRight)).Select
Set essai = selection
Cells(L, "B" ) = WorksheetFunction.VLookup(Cells(L, "A" ), Worksheets(essai), 2, False)
le problème est que je sélectione ma plage sur une autre page je voudrais la délimité en automatique!!! je me suis inspirais de ton essai!!!
mais il existe toujours un problème::::
Marsh Posté le 24-02-2005 à 15:29:34
petit problème de définition de "sourcedata", je voudrais faire un choix automatique de la plage, c'est à dire selectionner les cellules non vide, j'y suis arrivé avec "activecell.end..." mais le souci c'est que lorsque j'éxecute le prog "sourcedata" n'est pas valide il ne reconnait pas la plage....comment faire !!!!merci
Private Sub CommandButton1_Click()
Dim essai
Cells(1, 1).Select
essai = Range(ActiveCell.End(xlDown), ActiveCell.End(xlToRight)).Select
ActiveSheet.PivotTableWizard SourceType:=xlDatabase, SourceData:="essai", TableDestination:=Worksheets("feuil2" ).Range("a1" ), TableName:="tableau croisé dynamique1"
ActiveSheet.PivotTables("tableau croisé dynamique1" ).AddFields RowFields:=Array("fournisseurs", "données" )
With ActiveSheet.PivotTables("tableau croisé dynamique1" ).PivotFields("qté reçue" )
.Orientation = xlDataField
End With
With ActiveSheet.PivotTables("tableau croisé dynamique1" ).PivotFields("Formule" )
.Orientation = xlDataField
End With
With ActiveSheet.PivotTables("tableau croisé dynamique1" ).PivotFields("indice fiabilité" )
.Orientation = xlDataField
.Function = xlAverage
End With
ActiveSheet.PivotTables("tableau croisé dynamique1" ).PivotSelect "données[tous]", xlLabelOnly
With ActiveSheet.PivotTables("tableau croisé dynamique1" ).PivotFields("données" )
.Orientation = xlColumnField
End With
End Sub