Bonjour le forum,
Voila je possède deux documents xls, l'un contenant mes valeurs sous la forme d'un tableau croisé dynamique et un autre contenant un tableau de valeurs en fonction du temps afin d'obtenir un graphique.
Je souhaiterais ainsi copier mes valeurs provenant du pivot vers une colonne dédiée de mon tableur de valeur.
Je pensais passer par l'intermédiaire d'un fichier .csv afin d'extraire les valeurs du pivot et ensuite importer les valeurs dans mon autre workbook dans la colonne souhaitée.
Puis je importer une certaine colonne d'un fichier .csv dans une feuille .xl?
Eventuellement je pensais effectuer l'enregistrement "Save as" en fichier .csv et l'import de données sur ma feuille xl via un bouton de commande et un programme en vba associé.
Dans cette optique, j'ai rédigé le programme ci dessous mais je rencontre un conflit entre le fichier csv et le fichier d'origine puisqu'il ne prend pas en compte la ligne Activeworkbook.save apres l'enregistrement sous csv. En effet méme avec le "save' il me demande si je veux sauvegarder, ce qui mets en péril l'éxécution du reste du programme
De plus mon fichier avec le pivot se nomme désormais de la même façon que mon fichier csv..:/
Cela fait un moment que je planche sur cela, j'ai besoin d'un regard neuf et surement plus expérimenté en VB.
Merci d'avance
Ci dessous le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 Private Sub CommandButton1_Click() Dim wb As Workbook Dim ws As Worksheet ChDir "D:\Documents and Settings\39518\Desktop\draft" 'enregistrement sous en csv ActiveWorkbook.SaveAs Filename:= _ "D:\Documents and Settings\39518\Desktop\draft\TestQueing.csv", FileFormat _ :=xlCSV, CreateBackup:=False 'sauvegarde du fichier avec le pivot ActiveWorkbook.Save 'fermeture du fichier ActiveWorkbook.Close 'ouverture du fichier csv Workbooks.Open Filename:= _ "D:\Documents ans Settings\39518\Desktop\draft\TestQueing.csv" 'selection de la premiere serie de donnee Range("C8:C31").Select 'copie Selection.Copy 'ouverture du fichier recuperant les valeurs Workbooks.Open Filename:= _ "D:\Documents and Settings\39518\Desktop\draft\Masterfiletest.xls" 'selection et coller Range("C2").Select ActiveSheet.Paste Application.CutCopyMode = False 'retour au fichier csv et meme approche pour la prochaine serie de donnees Windows("TestQueing.csv").Activate Range("C33:C56").Select Selection.Copy Windows("Masterfiletest.xls").Activate Range("C27").Select ActiveSheet.Paste Application.CutCopyMode = False End Sub
Partager