Hallo,
In een Excel sheet heb ik 78 grafieken staan. Doordat de meetwaarden kunnen veranderen, kan het voorkomen dat mijn grafieken continu wijzigen. Nu heb ik gezien dat je via 'grafiektype' een zelf gemaakte grafiek kunt opslaan en de opmaak hiervan door kunt kopiëren naar de andere grafieken.
Echter, de opmaak is niet het enige wat ik automatisch aan zou willen passen. De grafiektitel is immers een celverwijzing (per grafiek anders) en ik zou graag de schaal van de grafiek aanpassen aan het maximum van de meetwaarden (voor alle grafieken gelijk).
Via dit forum heb ik wel al een tip gezien door de volgende code te gebruiken:
Maar op de een of andere manier werkt deze code niet. Ik heb de automatische recorder gebruikt om de opmaak aan te passen en kom dan (met bovenstaande code) tot het volgende:
Hierbij krijg ik echter de volgende foutmelding: 'Fout 9 tijdens uitvoering: Het subscript valt buiten het bereik'.
En dan nu de vragen:
1. Wat is er fout aan de code?
2. Is het wel mogelijk om de grafiektitel dynamisch te houden in de bovenstaande code of dien ik dan de grafieken apart te benoemen?
Wat betreft maximum en minimum denk ik dat dit aan de bovenstaande code toegevoegd zou kunnen worden. Deze is voor alle grafieken gelijk.
Alvast bedankt!
In een Excel sheet heb ik 78 grafieken staan. Doordat de meetwaarden kunnen veranderen, kan het voorkomen dat mijn grafieken continu wijzigen. Nu heb ik gezien dat je via 'grafiektype' een zelf gemaakte grafiek kunt opslaan en de opmaak hiervan door kunt kopiëren naar de andere grafieken.
Echter, de opmaak is niet het enige wat ik automatisch aan zou willen passen. De grafiektitel is immers een celverwijzing (per grafiek anders) en ik zou graag de schaal van de grafiek aanpassen aan het maximum van de meetwaarden (voor alle grafieken gelijk).
Via dit forum heb ik wel al een tip gezien door de volgende code te gebruiken:
Code:
Sub Macro1()
For Each ch In ActiveSheet.ChartObjects
.......)
.......) hier de gewenste opmaak
.......)
Next ch
End Sub
Maar op de een of andere manier werkt deze code niet. Ik heb de automatische recorder gebruikt om de opmaak aan te passen en kom dan (met bovenstaande code) tot het volgende:
Code:
Windows("Template_3 vs2_.xls").Activate
Sheets("Grafisch").Select
For Each ch In ActiveSheet.ChartObjects
ch.Activate
ActiveChart.SeriesCollection(1).Select
With Selection.Border
.ColorIndex = 12
.Weight = xlMedium
.LineStyle = xlContinuous
End With
With Selection
.MarkerBackgroundColorIndex = xlNone
.MarkerForegroundColorIndex = xlNone
.MarkerStyle = xlNone
.Smooth = False
.MarkerSize = 3
.Shadow = False
End With
ActiveChart.PlotArea.Select
ActiveChart.SeriesCollection(2).Select
With Selection.Border
.ColorIndex = 52
.Weight = xlMedium
.LineStyle = xlContinuous
End With
With Selection
.MarkerBackgroundColorIndex = xlNone
.MarkerForegroundColorIndex = xlNone
.MarkerStyle = xlNone
.Smooth = False
.MarkerSize = 3
.Shadow = False
End With
ActiveChart.SeriesCollection(3).Select
With Selection.Border
.ColorIndex = 43
.Weight = xlMedium
.LineStyle = xlContinuous
End With
With Selection
.MarkerBackgroundColorIndex = xlNone
.MarkerForegroundColorIndex = xlNone
.MarkerStyle = xlNone
.Smooth = False
.MarkerSize = 3
.Shadow = False
End With
ActiveChart.Legend.Select
Selection.Left = 560
ActiveChart.PlotArea.Select
Selection.Left = 20
Selection.Top = 31
Selection.Width = 474
Selection.Height = 173
Selection.Width = 533
Selection.Height = 209
Selection.Width = 536
Selection.Height = 203
Selection.Width = 523
Selection.Left = 33
Next ch
Hierbij krijg ik echter de volgende foutmelding: 'Fout 9 tijdens uitvoering: Het subscript valt buiten het bereik'.
En dan nu de vragen:
1. Wat is er fout aan de code?
2. Is het wel mogelijk om de grafiektitel dynamisch te houden in de bovenstaande code of dien ik dan de grafieken apart te benoemen?
Wat betreft maximum en minimum denk ik dat dit aan de bovenstaande code toegevoegd zou kunnen worden. Deze is voor alle grafieken gelijk.
Alvast bedankt!