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

Makro verzögert starten

Makro verzögert starten
31.07.2008 11:24:50
Gerd
Hallo zusammen!
Ich bitte euch, mir bei folgendem Problem zu helfen:
In einer Excel-Tabelle werden in einem ausgeblendeten Tabellenblatt beim Öffnen der Datei Daten aus einer externen Datenquelle (Access Datenbank auf einem entfernten Server) eingelesen.
Die Anwender müssen dann in einem teilweise geschützten Tabellenblatt verschiedene Daten eingeben.
Jetzt habe ich per VBA eine Userform erstellt, in der nebem dem Kalendersteuerlement zwei Kombinationsfelder enthalten sind. Die Userform wird beim Öffnen der Datei per Workbook_open aufgerufen.
Die Daten für die Kombinatiosfelder kommen aus dem oben beschriebenen ausgeblendeten Tabellenblatt.
Jetzt zum eigentlichen Problem:
Da die Userform beim Start aufgerufen wird, blockiert sie das einlesen der Daten aus der externen Datenquelle, sodass die Kombinationsfelder leer bleiben.
Rufe ich die Userform über eine Schaltfläche mit hinterlegtem Makro manuell auf, sind die Daten da. Die Userform ist also in Ordnung.
Auch ein verzögerter Aufruf der Userform mit Application.wait führt nur dazu, dass die Userform verzögert angezeigt wird; die Daten aus der externen Datenquelle werden aber trotzdem nicht eingelesen.
Wie bekomme ich es hin, dass die Datei richtig geladen wird - inklusive einlesen der externen Daten - und erst dann die Userform angezeigt wird?
Vielen Dank schon einmal im Voraus!
Gerd

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro verzögert starten
31.07.2008 12:42:00
Franc
wie sieht denn dein Makro aktuell aus?
wenn der 1. schritt "daten einlesen" ist und danach Userform aufrufen kommt, dann sollte die Userform erst aufgerufen werden, wenn auch die Daten eingelesen wurden.

AW: Makro verzögert starten
31.07.2008 12:59:40
Gerd
Hallo Franc!
Das Einlesen der Daten wird nicht von dem Makro erledigt, sondern über eine Abfrage der externen Datenbank (Daten --> externe Daten importieren).
Das Makro soll lediglich warten, bis die Daten eingelesen sind, und dann die Userform anzeigen. Das Makro sieht so aus:

Private Sub Workbook_Open()
Application.Wait (Now + TimeValue("00:00:04"))
UserForm1.Show
End Sub


Die hier angegebenen 4 Sekunden Wartezeit würden reichen, um die Daten über die Abfrage einzulesen.
Leider führt diese Form des Makros dazu, dass nur für 4 Sekunden die Anzeige der Userform hinausgezögert wird und bis zur Anzeige auch alles Weitere blockiert ist.
Wenn die Userform erscheint und ich sie schließe, sehe ich in der Satuszeile, wie dann erst die Abfrage ausgeführt wird.
Irgendeine Idee?
Gruß
Gerd

Anzeige
AW: Makro verzögert starten
31.07.2008 15:36:52
noffi
Hallo Gerd.
Versuche mal folgendes.
Für die UF gibt es eine Ereigniss dass sich "UserForm_Initialize" nennt. Führe da den Code zum einlesen Deiner Komboboxen aus. Wenn Das fertig ist, gibt Du am Ende dieser Prozedur den Befehl "Me.show" ein.
So werden die Felder erst gefüllt, und dann die UF angezeigt.
Gruß
noffi

AW: Makro verzögert starten
31.07.2008 15:52:00
Gerd
Hallo noffi!
Tja, das ist ja das Problem. Das Einlesen der Daten erfolgt nicht über VBA-code, sondern über die Abfrage einer externen Datenbank ("Daten - externe Daten importieren").
Was auch immer ich mit der Userform mache; sie behindert das Einlesen der Daten. Gibt es nicht irgendein Kommando, nachdem ein Makro so-und-so-viel Sekunden nach Öffnen der Datei aufgerufen wird und damit auch erst die Userform?
Danke nochmals!
Gerd

Anzeige
AW: Makro verzögert starten
31.07.2008 17:45:21
Klaus
Hi,
mit wait hälts du die ganze Application an, nimm ein OnTime-Makro.
mfg Klaus

AW: Makro verzögert starten
01.08.2008 07:24:00
Gerd
Hallo Klaus!
Vielen Dank für den Tipp!
Jetzt wird die Anwendung nicht mehr aufgehalten und die Kombi-Felder sind befüllt.
Super!
Gruß
Gerd

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige