Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1848to1852
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Listbox Click wird ungewollt ausgelöst

Listbox Click wird ungewollt ausgelöst
04.10.2021 16:41:29
Stefan
Moin Moin zusammen.
Ich weiss, dass man es am liebsten hätte, wenn man Beispieldateien hochlädt, jedoch kann ich hier leider keine liefern. Es sind zwei Dateien mit einfach zu vielen sensiblen Daten. Ich versuche trotzdem meine Frage hier zu stellen. Vielleicht hat jemand eine Idee woran es liegen kann. Ich habe die Datei mit dem enthaltenen Code von einem Kollegen übernehmen müssen.
Folgender Prozess:
In einer Excelmakrodatei werden mittels Makro Informationen aus unserem Großrechner gesammelt und in ein Tabellenblatt geschrieben. Soweit kein Problem.
Nun soll ein Zellbereich in ein Tabellenblatt in einer neuen Makrodatei eingefügt werden. Dazu öffne ich aus der Startdatei die Vorlagedatei (Auswahldatei) per Code mit Workbooks.Open Weg & Auswahl_Datei ' öffnen
Sobald die Auswahldatei geöffnet wird, spring das Makro sofort in eine Funktion Private Sub ListBox1_Click() und läuft dort auf Fehler, da das in der Funktion aufgeführte Tabellenblatt ausgeblendet ist. Dieses Blatt hat aber rein gar nichts mit dem eigentlich kopieren/einfügen zu tun.
Auf dem Blatt ist auch keine Private Sub Worksheet_Activate() Funktion enthalten. Ich habe auch bereits Private Sub ListBox1_Change() ohne Erfolg ausprobiert. Auch dann spring er sofort nach öffnen der Datei in diese Funktion. Und wenn ich die Auswahldatei (Vorlage) manuell öffne, springt er auch sofort in diese Click-Funktion der Listbox.
Beide Dateien verfügen über programmierte Ribbon. Liegt es daran vielleicht?
Ich bin einfach ratlos und weiss einfach nicht warum Excel das so macht. Hat hier vielleicht jemand für dies Phänomen eine Erklärung oder Idee woran es liegen kann, auch wenn man nicht den ganzen Quellcode kennt?
Falls niemand ohne Quellcode Hinweise geben kann, wo ich suchen muss, tut es mir Leid diesen Post eröffnet zu haben. Ich habe einfach keine Idee.....

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox Click wird ungewollt ausgelöst
04.10.2021 17:01:59
Daniel
HI
das Click-Event wird immer dann ausgelöst, wenn sich der ListIndex der Listbox ändert, auch wenn das durch einen Makrobefehl ausgeführt wird, nicht nur dann, wenn der Anwender draufgeklickt hat.
Lösungsmöglichkeiten gibts verschiedene, hier mal zwei davon:
a) versuche herauszufinden, was genau den Fehler verursacht und frage dann diesen Fall im Click-Event-Makro vorher ab, so dass du den Fehler vermeiden kannst.
b) wenn nur auf Klick des Anwenders reagiert werden soll, könntest du statt dem Click-Event auch MouseUP oder AfterUpdate verwenden (müsstest du dir mal genauer anschauen, was besser passt). Wenn die Anwender nicht nur mit der Maus sondern auch mit der Tastatur arbeiten, brauchst du bei MouseUP ggf noch parallel das KeyUp-Event um die Aktion auszulösen.
Gruß Daniel
Anzeige
AW: Listbox Click wird ungewollt ausgelöst
05.10.2021 18:14:48
Stefan
Hi Daniel. Danke für Deine Tipps! Warum er immer wieder in die "blöde" Funktion springt kann ich nicht ermitteln. Dazu fehlt mir das KnowHow:
Habe jetzt schon mal mit Afterupdate und Mouseup gespielt. Afterupdate hat nicht geholfen. Mit Mouseup scheint ein Workaround zu sein. Keyup habe ich erstmal weggelassen. Aktuell scheint es so zu helfen. Dankeschön!
Andernfalls eröffne ich halt wieder ein Thread.
AW: Listbox Click wird ungewollt ausgelöst
06.10.2021 09:01:56
Daniel
HI
geh mal im Edtior in EXTRAS - OPTIONEN - ALLGEMEIN und setze den Haken "Unterbrechen bei Fehlern im Klassenmodul".
dann bekommst du auch bei Klassenmodulen den Fehlerstop dort, wo der Fehler passiert.
damit du dein Makro besser verstehst:
setze mal auf die erste Programmzeile nach dem Workbooks.open einen Haltepunkt oder füge danach die Befehlszeile STOP ein.
Starte dann das Makro. Wenn der Haltepunkt erreicht ist, klickst du dich im Einzelstepmodus von Befehl zu Befehl (Taste F8 oder Button "Einzelschritt" in der Symbolleiste "Debuggen")
dann siehst du, in welcher Reihenfolge die einzelnen Eventmakros ausgeführt werden und kannst erkennen, welcher Befehl das Click-Event der Listbox auslöst (sofern vorhanden)
Gruß Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige