Bonjour,
J'essaie de créer une macro qui me permette d'ouvrir un fichier via une boite de dialogue (chose réussie) puis d'y tracer un graphique sur une plage de donnée fixe ("B426,F4:F26"), la colonne F étant calculée juste avant. C'est sur cette deuxième partie que je bloque, malgré des idées pêchées un peu partout.
Je vous fourni mes deux macros, inspirées de l'enregistrement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Pfad = Application.GetOpenFilename(fileFilter:="*,*", MultiSelect:=True) a = 1 Workbooks.OpenText Filename:=Pfad(a), Origin:=xlMSDOS, _ StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _ ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, Comma:=False, _ Space:=True, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3 _ , 1), Array(4, 1), Array(5, 1)), DecimalSeparator:=".", TrailingMinusNumbers:= _ True ActiveSheet.Name = ("I-V") End SubQui me renvoie actuellement une 'erreur 1004' au niveau du Addchart
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 Range("F4").Select ActiveCell.FormulaR1C1 = "Delta_V" Range("F6").Select ActiveCell.FormulaR1C1 = "=RC[-2]-RC[-3]" Range("F6").Select Selection.AutoFill Destination:=Range("F6:F26"), Type:=xlFillDefault Range("F6:F26").Select Range("B4:D26,F4:F26").Select Range("F4").Activate ActiveSheet.Shapes.AddChart.Select ActiveChart.ChartType = xlXYScatter ActiveChart.SetSourceData Source:=Range( _ "'I-V'!$B$4:$D$26;'I-V'!$F$4:$F$26") ActiveSheet.Shapes("Graphique 1").IncrementLeft -55.5 ActiveSheet.Shapes("Graphique 1").IncrementTop -83.25 ActiveChart.SeriesCollection(3).Select ActiveChart.SeriesCollection(3).AxisGroup = 2 ActiveSheet.ChartObjects("Graphique 1").Activate ActiveChart.SeriesCollection(3).Select ActiveChart.ChartArea.Select End Sub
Dans l'absolu une simple deuxième macro pour tracer le graphique à partir d'un raccourci clavier (la macro étant stockée dans un fichier ouvert pendant que je traite les autres) me suffirait.
Merci![]()
Partager