Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1448to1452
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

Bei Userform schliessen Arbeitsblatt wechseln

Bei Userform schliessen Arbeitsblatt wechseln
24.09.2015 12:54:39
MarkusX
Hallo Forum,
Mit folgendem Code moechte ich gerne eine UserForm verlassen und dabei in eine andere Arbeitsmappe wechseln. Eigentlich ganz simpel und funzt auch:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
Unload Me
Sheets("Andere_Mappe").Select
End Sub

Das Problem ist nun, dass diese "Andere_Mappe" nun irgendwie gesperrt scheint. Keine Zelleingaben mehr mgl., kein schliessen ueber das Kreuz. ABER wechsel ich in eine weitere Mappe und wieder zurueck zu "Andere_Mappe" ist alles wieder OK.
Was ist da los? Kann mir jemand erlaeutern was ich eigentlich mit UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) da anstelle, die F1-Hilfe war hier nicht hilfreich. Ich suche nun schon seit langem nach einer Loesung, werde leider aber weder in den Foren noch in der Hilfe etc. fuendig.
Danke,
MarkusX

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bei Userform schliessen Arbeitsblatt wechseln
24.09.2015 13:19:01
fcs
Hallo Markus,
die Zeile
Unload.Me
ist überflüssig, da dieses Makro ausgeführt wird, bevor der Schließen(inkl. Unload-Prozess) für das Userform ausgeführt wird.
Die Blockade des selectierten Sheets könnte daher rühren, dass
Application.ScreenUpdating noch auf False gesetzt ist.
Füge die Zeile
Application.ScreenUpdating = True zusätzlich ein.
evtl. ist
Sheets("Andere_Mappe").Activate
günstiger als .Select, sollte bei Tabellenblättern aber keine Rolle spielen.
Gruß
Franz

AW: Bei Userform schliessen Arbeitsblatt wechseln
24.09.2015 15:05:39
MarkusX
Hallo Franz!
Vielen Dank fuer Deine Antwort.
Select und Unload Me hab ich rausgenommen, danke fuer den Tip!
Application.ScreenUpdating = True fuehrt leider nicht zum Ziel, das Arbeitsblatt ist immer noch blockiert.
Weitere Info: wenn ich zu einem anderem Arbeitsblatt hin- und wieder zu "Andere_Mappe" zurueckwechsle, loest sich die Blockade ... seltsam!
Hast Du evtl. noch eine andere Idee?
Muss ich evtl. an dieser Zeile etwas aendern?:
QueryClose(Cancel As Integer, CloseMode As Integer)
Gruesse
Markus X

Anzeige
AW: Bei Userform schliessen Arbeitsblatt wechseln
24.09.2015 18:04:15
fcs
Hallo Markus,
mit den Parametern der Query-CloseProzedur hat das nichts zu tun.
Via CloseMode kann man steuern was passieren soll, je nachdem wer (User, Code, Windows oder Taskmanager) versucht das Userform zu schließen.
Versuche einfach mal im Makro erst ein anderes Blatt und dann das gewünschte Blatt zu aktivieren. Evtl. funktioniert das ja.
Gruß
Franz

AW: Bei Userform schliessen Arbeitsblatt wechseln
24.09.2015 18:36:50
MarkusX
Hallo Franz,
Ich dachte deshalb an QueryClose, weil ja das Arbeitsblatt "Andere_Mappe" danach nicht mehr ueber X ("rechts oben") geschlossen werden kann.
Weitere Funktion die nicht mehr geht: scrollen mittels Maus (ueber die scroll-bar geht es aber noch).
All diese Dinge sind aufgehoben, wenn ich zwischen den Arbeitsblaettern wechsle und zurueckkehre... Daher hatte ich Deine Idee auch schonmal ausprobiert, fuehrt leider aber auch nicht zum Ziel.
Ich danke Dir fuer die Unterstuetzung! Hast Du evtl. noch weitere Ideen?
Gruesse
Markus X

Anzeige
AW: Bei Userform schliessen Arbeitsblatt wechseln
24.09.2015 23:00:37
fcs
Hallo Markus,
da bin ich jetzt mit meiner theoretischen Weisheit erst einmal am Ende.
Probiere zusätzlich nach dem Blatt.Activate auch noch einen
ActiveCell.Select
Das ist zwar eigentlich Unfug aber evtl. bewirkt es ja etwas.
Ansonsten kommen nur noch Kobinationen von Blattschutz-Einstellungen und Scroll-Area-Einstellungen in Frage, aber das kann eigentlich nicht sein, wenn es nach dem manuellen Umweg über ein anderes Blatt wieder funktioniert.
Gruß
Franz

AW: Bei Userform schliessen Arbeitsblatt wechseln
25.09.2015 09:24:54
MarkusX
Hallo Franz,
nein das war's leider auch nicht ... meinst Du nicht doch, dass es etwas mit der Art und Weisse wie ich die Userform geschlossen habe (und daher evtl. doch QueryClose) zu tun hat?
Ansonsten schau ich mir doch mal die Blattschutz-Einstellungen und Scroll-Area-Einstellungen an, evtl. komme ich da weiter.
Vllt. hat ja auch noch jemand anders Ideen, deshalb lass ich die Frage mal weiter offen.
Gruss und danke,
Markus X

Anzeige
AW: Bei Userform schliessen Arbeitsblatt wechseln
25.09.2015 12:46:53
fcs
Hallo Markus,
erstelle mal eine Kopie deiner Datei und lade sie hier hoch.
Anonymisiere sensible Daten und lösche nicht benötigtes Zeug. Tritt der Fehler noch auf, dann lade die Datei hier hoch. Dann man sich das mal anschauen. Evtl. passieren da ja doch feststellbare Sachen, die das Phänomen verursachen.
Gruß
Franz

AW: Bei Userform schliessen Arbeitsblatt wechseln
25.09.2015 13:03:42
MarkusX
Hi,
hier die abgespeckte Version:
https://www.herber.de/bbs/user/100394.xlsm
Hinter Button "Aggiorna dati record" verbirgt sich die Userform1, die bei schliessen ueber das X (rechts oben) die Probleme verursacht.
Hoffe es ist einigermassen klar. Falls nicht einfach nachhaken.
Danke fuer die Muehen!
Gruss
Markus X

Anzeige
AW: Bei Userform schliessen Arbeitsblatt wechseln
25.09.2015 15:34:31
fcs
Hallo Markus,
ich hab die Datei unter Windows 7 / Office 2010 getestet.
Die Umschaltung beim Schließen von Userform1 via Schließkreuz zum 1. Tabellenblatt funktioniert reibungslos.
Ich probiere nachher nochmals unter Windows 10/Ofice 365/Excel 2013.
Gruß
Franz

AW: Bei Userform schliessen Arbeitsblatt wechseln
25.09.2015 15:54:57
MarkusX
Ohmann, ich hab mir ueberlegt, ob es klug ist sofort von Windoofs 8.1 auf 10 umzustellen ... aber die Kacheln wollte ich einfach loswerden ...
Bin gespannt, was weiter bei Dir rauskommt.
Gruss
Markus X

AW: Bei Userform schliessen Arbeitsblatt wechseln
26.09.2015 00:08:52
fcs
Hallo Markus,
ich hab jetzt noch weiter rumprobiert.
Unter Windows Vista und Excel2010: 0 Problemo
Unter Windows 10 und Office 365/Excel 13: das von dir beschriebene Problem.
Bei mir wurden sämtliche Menü-Funktionen deaktiviert und erst nach einem manuellen Wechsel des Blattes wieder funktionsfähig.
Ich konnte das auch problemlos nachbauen in einer neuen Datei.
Da scheint es in Excel 2013 und/oder Windows 10 ein massives Problem zu geben, wenn beim Schließen eines Userforms - egal ob via "Unload Me" oder "Me.Hide" noch ein anderes Blatt per Select oder Activate angezeigt werden soll.
Die Lösung sieht wie folgt aus:
Du musst die Selektion des Blattes in das Makro einbauen in dem die Userform per Show aufgerufen wird.
Also zum Beispiel im Modul5:
Public Sub UserForm1_anzeigen()
Sheets("Dettagli record").Select
UserForm1.Show
Sheets("Scelta cliente").Select
End Sub
Im Userform-Code kanst das Makro
Private Sub UserForm_QueryClose
löschen.
Gruß
Franz

Anzeige
Geloest
26.09.2015 07:06:43
MarkusX
Guten Morgen Franz,
hab Deine Loesung gerade eingebaut und siehe da! Das war's scheint's, so laeuft alles einwandfrei!
Perfekt, ich danke Dir, auch fuer Deine Ausdauer! Und wie so oft, ist die Loesung ganz einfach, man muss nur drauf kommen ;)
Mal gespannt, ob das Prob bei den naechsten Versionen von Win10 geloest wird ...
Viele Gruesse,
Markus X

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige