08.05.2017, 14:55
Hallo zusammen,
im Anhang ist eine Excel-Datei in der ich ein paar Makros aufgenommen habe.
Die Makros sind alle dazu da um automatisch bestimmte Farben und Symbole in der Legende vom Spinnendiagramm einzustellen.
Die farbigen Symbole stehen dann für bestimmte Spalten in der zugehörigen Tabelle.
Bisher habe ich die Makros immer über "Makros aufzeichnen" erstellt.
Aber es gibt ja auch immer eine Code-Darstellung eines Makros.
Zwischenfrage: Beim Aufnehmen vom Makro wird man am Anfang immer auch
dazu gezwungen einen Hotkey dafür festzulegen.
Kann man das umgehen, indem man das Makro durch Code erstellt?
Die Code-Darstellung erreiche ich bisher über den "Visual Basic"-Knopf.
Da ich immer per aufnahme Makros gemacht habe wurden die Module 1 und 2
automatisch angelegt.
Die Makros sehen alle bisher so aus:
Bei dem Makro, dass ich über Code anlegen will
habe ich einfach den Code oben kopiert und
in einem neuen Modul eingefügt, die Spalten und Namen angepasst
und gespeichert
Ergebnis:
Habe in den oberen Zeilen den Shortcut weggelassen weil mir
die Buchstaben sowieso ausgehen werden und ich langfristig
nur ohne Shortcuts auskomme.
Beim Ausführen vom Makro kommt dann:
"Bezug ist ungültig"
Weiß jemand warum? Vielen Dank für eure Hilfe!
Falls was unklar ist, einfach rückfragen.
Viele Grüße
Benno
im Anhang ist eine Excel-Datei in der ich ein paar Makros aufgenommen habe.
Die Makros sind alle dazu da um automatisch bestimmte Farben und Symbole in der Legende vom Spinnendiagramm einzustellen.
Die farbigen Symbole stehen dann für bestimmte Spalten in der zugehörigen Tabelle.
Bisher habe ich die Makros immer über "Makros aufzeichnen" erstellt.
Aber es gibt ja auch immer eine Code-Darstellung eines Makros.
Zwischenfrage: Beim Aufnehmen vom Makro wird man am Anfang immer auch
dazu gezwungen einen Hotkey dafür festzulegen.
Kann man das umgehen, indem man das Makro durch Code erstellt?
Die Code-Darstellung erreiche ich bisher über den "Visual Basic"-Knopf.
Da ich immer per aufnahme Makros gemacht habe wurden die Module 1 und 2
automatisch angelegt.
Die Makros sehen alle bisher so aus:
Code:
Sub f70_legende()
'
' f70_legende Makro
'
' Tastenkombination: Strg+u
'
ActiveChart.SeriesCollection.NewSeries
ActiveChart.FullSeriesCollection(8).Name = "=Tabelle1!$I$4"
ActiveChart.FullSeriesCollection(8).Values = "=Tabelle1!$I$5:$I$19"
ActiveChart.FullSeriesCollection(8).Select
Selection.Format.Line.Visible = msoFalse
With Selection
.MarkerStyle = 1
.MarkerSize = 5
End With
End Sub
Bei dem Makro, dass ich über Code anlegen will
habe ich einfach den Code oben kopiert und
in einem neuen Modul eingefügt, die Spalten und Namen angepasst
und gespeichert
Ergebnis:
Code:
Sub s10_legende()
'
' s10_legende Makro
'
'
'
ActiveChart.SeriesCollection.NewSeries
ActiveChart.FullSeriesCollection(7).Name = "=Tabelle1!$Z$4"
ActiveChart.FullSeriesCollection(7).Values = "=Tabelle1!$Z$5:$Z$19"
ActiveChart.ChartArea.Select
ActiveChart.FullSeriesCollection(7).Select
Selection.Format.Line.Visible = msoFalse
With Selection
.MarkerStyle = 1
.MarkerSize = 5
End With
Selection.MarkerStyle = 2
End Sub
die Buchstaben sowieso ausgehen werden und ich langfristig
nur ohne Shortcuts auskomme.
Beim Ausführen vom Makro kommt dann:
"Bezug ist ungültig"
Weiß jemand warum? Vielen Dank für eure Hilfe!
Falls was unklar ist, einfach rückfragen.
Viele Grüße
Benno