Selection des données sources pour un TCD en VBA.

C

Chris

Guest
Salut le forum


Sur un TCD en vba:

Est il possilbe de rentrer une selection du genre feuille1!'R1C1:R(derniere cellule non vide)C10 ?


Ci joint le fichier avec la maro.

On doit surment pouvoir faire plus simple, c'est un mix entre les macro automatiques et moi.

J'accepte volontier vos ameliorations

Merci

@+
Chris
 

Pièces jointes

  • Suivis-maintenanceV1.0.zip
    28.9 KB · Affichages: 15
F

Frédéric

Guest
Si j'ai bien compris, ce dont tu as besoin, c'est de savoir combien de données tu as trié pour faire ton TCD.
Dans la positive, fait les 2 modifs écrites ci dessous dans ta macro :



Sub Cumul_annuel_pannes()
'
' Macro9 Macro
' Macro enregistrée le 25/11/2004 par Chrisrian Nouyrigat
'
Application.ScreenUpdating = False
madate = InputBox("Quelle année voullez vous traiter ?", "Somme des pannes machine", "aaaa")
If madate = "" Then Exit Sub
'If madate < 36526 Then
'MsgBox "Date non valide", vbCritical: Exit Sub
'End If
titre_graph = "Cumul temps pannes annuel " & " " & (madate)
nomdate = "" & Format(madate, "mmm") & " " & Format(madate, "yyyy")
Sheets("histogen").Select
Range("a2").Select
Selection.AutoFilter
Selection.AutoFilter Field:=12, Criteria1:=madate
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.Columns("j")).Select
Selection.Copy
Sheets.Add
ActiveSheet.Paste
'/////////////////////////////////////////////////////
'determination du nombre de lignes d'interet
NbLignes = Selection.Rows.Count
'/////////////////////////////////////////////////////
ActiveSheet.Name = "temp"
Sheets.Add
ActiveSheet.Name = "temp1"
Range("A1").Select
Application.CutCopyMode = False

'/////////////////////////////////////////////////////
'intégration de la variable dans la création du TCD
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"'temp'!R1C1:R" & NbLignes & "C10").CreatePivotTable TableDestination:="'temp1'!R1C1", TableName:= _
"Tableau croisé dynamique3", DefaultVersion:=xlPivotTableVersion10
'////////////////////////////////////////////////////
......


Cdt
Frédéric
 
D

Dan

Guest
Bonjour Chris,

Voici une solution complémentaire à celle de Frédéric.

J'ai apporté quelques changements à ta macro comme demandé. Il reste certainement des améliorations à faire mais avant je souhaiterais que tu regarde le fichier ci-joint et faire part de tes commentaires.
J'ai également du suspendre deux instruction de la amcro qui provoquait une erreur; a confirmer avec ta version d'excel qui ne semble pas être celle d'Excel 2000.

Je pense qu'il y avait moyen de faire cela sans macro et interactif en créant un TCD sur base de la base de données existante. Il te suffit de placer le champ date en champ de page dans le TCD et de choisir le date voulue pour la visualisation de tes résultats aussi dans la graphique que dans le TCD.

Mais peut-être veux faire autre chose des résultats.

Dans l'attente de te lire

@+ Dan
 

Pièces jointes

  • Suivis-maintenanceV1.1.zip
    22.2 KB · Affichages: 29
C

Chris

Guest
salut dan, salut le forum


Effectivement tu as amelioré certains points de la macro Surtout sur la selection de plages de données.

Comme je debute j'essaye de me debrouiller avec les fonctions que je connais.

Je vais conserver ma macro car les utilisatuer du fichier ne savent pas du tout se servir d'excel (pour l'instant on en est au double click)

Alors si je leur parle de tcd c peut etre un peut tot.


merci @+

Chris
 

Discussions similaires

Statistiques des forums

Discussions
311 737
Messages
2 082 036
Membres
101 878
dernier inscrit
1475214