Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Bezug ungültig+Makros
#1
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:
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
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
Antworten Top
#2
Hallo Benno,

welche Codezeile ist markiert wenn die Fehlermeldung auftaucht? Könntest Du vielleicht die Datei hier hochladen?
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#3
Oh hab ich vergessen^^
Bisher bin ich mit dem Schritt-Knopf auch immer zur Code-Darstellung gelangt.
Der Schritt-Knopf blockiert aber wenn ich die Nachricht "Bezug ist ungültig" bekomme.


Angehängte Dateien
.xlsx   Spinne Vorlage.xlsx (Größe: 28,34 KB / Downloads: 2)
Antworten Top
#4
Hi,

Deine Datei enthält keine Makros!


Zitat:Zwischenfrage: Beim Aufnehmen vom Makro wird man am Anfang immer auch

dazu gezwungen einen Hotkey dafür festzulegen.


Wer zwingt Dich dazu?

Was ist das für eine Formel:


Code:
=C6+D6+E6+F6+G6+H6+I6+K6+L6+M6+N6+O6+P6+Q6+S6+T6+U6+V6+W6+X6+Z6+AA6+AB6+AC6+AD6+AF6+AG6+AH6+AJ6+AK6+AL6+AM6+AO6+AP6+AQ6+AR6+AS6+AT6+AV6+AW6+AX6+AY6+AZ6+BA6+BC6+BD6

Da reicht doch das:


Code:
=SUMME(C5:BD5)

Dein Makro läuft bei mir nicht.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#5
Werden die Makros vielleicht in einer externen Datei gespeichert?
Es gibt diese PERSONAL.XLSB, das irgendwie mit den Makros
zu tun hat.
Auf jeden Fall habe ich die Makros in meiner Excel Datei erstellt und auch angewendet.
Die Vorlage stammt nicht von mir. Selbst wenn sie von mir stammen würde schließe ich
nicht aus, dass der "Stil"  nicht perfekt ist. Das heißt die Schreibweise der Summe unnötig
lang ist, sehe ich ein. Ist aber auch nicht die Frage, die ich gestellt habe.
Antworten Top
#6
Hi,


eine .xlsx enthält keine Makros!


Zitat:Ist aber auch nicht die Frage, die ich gestellt habe.

War auch nur ein Nebenprodukt!
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#7
Schau, ich arbeite mich einfach gerade in das Thema ein.
Deswegen habe ich einfach angenommen, dass die Makros gleich in der .xlsx Datei mit dabei sind. (Hab sie immerhin mit geöffneter .xlsx Datei erstellt (keine Ahnung was technisch genau passiert wenn man ein Makro erstellt und in welche Datei die Makros tatsächlich geschrieben werden. Will ich auch nicht in diesem Thread erfahren.))
Du könntest mir zum Beispiel sagen, welchen Namen die Datei in der die Makros gespeichert werden
standardmäßig hat.

Oder wie läuft es bei dir ab wenn du Makros für eine Excel-Datei erstellst.
Erstellst du sie direkt in der Datei?
Wie teilst du die .xlsx Datei und die zugehörigen Makros mit anderen Leuten zum Beispiel in diesem Forum?
(genau meine Situation)
Antworten Top
#8
Hi,

dann lies Dir das mal durch:

https://support.office.com/de-de/article...803f7750a6&ui=de-DE&rs=de-DE&ad=DE&ocmsassetID=HP010352464



Zitat:Erstellst du sie direkt in der Datei?
ja.



Zitat:Wie teilst du die .xlsx Datei und die zugehörigen Makros mit anderen Leuten zum Beispiel in diesem Forum?

Das ist unterschiedlich. Einige Helfer öffnen keine Dateien mit Makros. Einige öffnen binär-Dateien, manche Foren erlauben diese schon gar nicht.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#9
Hallo Benno,

bis Office 2003 gab es zwischen einer Exceldatei mit und ohne Makros keine Namensunterschiede, sodass man sich beim Speichern keine Gedanken machen musste. Jetzt musst Du immer aufpassen, dass Du z.B. xlsm nimmst. Normalerweise kommt jedoch beim Speichern eine entsprechende Meldung - wenn Du nicht gerade mit Deinen codes z.B. Meldungen verhindert hast.

Das allgemeine "(mit)Teilen der Makros" hast Du ja schon hin bekommen. Wenn die Makros nicht zu groß sind, geht das so und dann hängst Du noch die xlsx dran oder postest einen Tabellenausschnitt.

Alternativ könntest Du längere Makros, Userforms usw. auch exportieren und in einer Datei gezippt hier hochladen oder Du packst sie in eine Textdatei.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#10
Hi,

das ist lustig:
(09.05.2017, 08:03)Benno schrieb: (keine Ahnung was technisch genau passiert wenn man ein Makro erstellt und in welche Datei die Makros tatsächlich geschrieben werden. Will ich auch nicht in diesem Thread erfahren.))
Du könntest mir zum Beispiel sagen, welchen Namen die Datei in der die Makros gespeichert werden standardmäßig hat.

oben sagst Du, Du willst es nicht erfahren und eine Zeile drunter fragst Du nach genau dieser Aussage.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste