Registriert seit: 17.12.2018
Version(en): Office Professional Plus 2016
Nun wie gesagt, der Sub überprüft ob bestimmte Zellen geändert werden und füllt dementsprechend andere Zellen mit einem vordefinierten Text aus.
Mit dem Option Explicit am Beginn des Codes erkennt das Makro nicht, wenn besagte Zellen geändert werden.
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
08.01.2019, 09:17
(Dieser Beitrag wurde zuletzt bearbeitet: 08.01.2019, 09:17 von RPP63.)
Moin!
Äpfel und Birnen?
Option Explicit bedeutet, dass Variablen-Deklaration zwingend erforderlich ist.
Außerdem hilft es ungemein, Schreibfehler im Code anzumeckern.
Es hat nix mit der Logik Deines Codes zu tun!
(dies schrieb Dir André sinngemäß bereits)
Lies Dir mal folgendes aufmerksam durch:
https://www.online-excel.de/excel/singsel_vba.php?f=4Solange Du nicht mal Deinen kompletten Code zeigst, wird das hier ein endloses Ping-Pong.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
08.01.2019, 09:24
(Dieser Beitrag wurde zuletzt bearbeitet: 08.01.2019, 09:24 von MisterBurns.)
Es hat garantiert nichts mit Option Explicit zu tun, es fehlt einfach was im Code.
Code:
...
If Target.Address = Range("A34").Address Then
...
Gleiches gilt für die zweite If-Abfrage.
Schöne Grüße
Berni
Registriert seit: 17.12.2018
Version(en): Office Professional Plus 2016
Danke, jetzt funktioniert das Makro, ohne dass die Fehlermeldung kommt, wenn ich mehrere Zellen lösche
Registriert seit: 11.04.2014
Version(en): Office 2003 - Office 2007 - Office 365
Hallo,
das hatte ich Dir allerdings bereits im Beitrag #16 geschrieben ...
schön, wenn es jetzt bei Dir funktioniert.
Lg
Marcus
Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
Registriert seit: 17.12.2018
Version(en): Office Professional Plus 2016
Jetzt nutze ich aber das "Option Explicit" nicht. Es hat nur das .Address gebraucht...
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
Zitat:Jetzt nutze ich aber das "Option Explicit" nicht.
Das ist unklug, spielt aber keine Rolle, falls du nur den einen Code verwendest.
Solltest du mehrere Prozeduren mit Variablen verwenden, empfiehlt sich auf jeden Fall, die Einstellung standardmäßig zu setzen.
Aber du hast scheinbar noch immer nicht verstanden, dass für den gegebenen Code Option Explicit keinerlei Auswirkung hat! Es ist einfach nur gute und richtige Programmierung, es dazuzuschreiben.
Schöne Grüße
Berni
Registriert seit: 11.04.2014
Version(en): Office 2003 - Office 2007 - Office 365
Hallo Bernie,
zeigt aber wie viel Mühe man sich gibt. Der TE kommt mit genau dem selben Code noch einmal an ...
Lg
Marcus
Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
Registriert seit: 17.12.2018
Version(en): Office Professional Plus 2016
Da hattest du mir aber nur zum .Address hinter dem If.Target geraten, siehe Beitrag 16. Das es auch hinter dem Range auch noch hinzukommt hab ich erst im Beitrag 23 erfahren. Darum dachte ich anfangs, es müsse mit dem Option Explicit zu tun haben, sorry.
Aber danke für die Hilfe
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
(09.01.2019, 16:22)Lopezoli schrieb: Da hattest du mir aber nur zum .Address hinter dem If.Target geraten, siehe Beitrag 16. Das es auch hinter dem Range auch noch hinzukommt hab ich erst im Beitrag 23 erfahren. Darum dachte ich anfangs, es müsse mit dem Option Explicit zu tun haben, sorry.
Dieses
If Target.Address = Range("A34").Address Then
ist eh ein bisschen von hinten durch die Brust ins Auge.
Dann kann man auch gleich schreiben:
If Target.Address = "$A$34" Then
Gruß Uwe