Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
948to952
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
948to952
948to952
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro wartet auf Rückkehr?

Makro wartet auf Rückkehr?
06.02.2008 15:01:00
Adi
Hallo liebes Forum,
hoffe mir ist noch zu helfen.
Wie kann ich bewerkstelligen, dass ich
innerhalb eines Makros (nennen wir es Makro A in Datei A)
eine andere Exceldatei (Datei B) öffne/ bearbeite/ speichere
und erst jetzt mit Makro A fortfahre.
Das Makro A kann doch nie und nimmer wissen, dass es erst fortfahren darf/ muss, wenn Datei B wieder geschlossen ist!!
Notfalls behelfe ich mir dadurch, dass ich den 2. Teil des Makros mit dem Ereignis Workbook_Activate verbinde, das in Datei A ausgelöst wird, wenn Datei B geschlossen wird.
Aber 1) Wehe, der User springt nur mal so hin und her!
Aber 2) Wirklich sauber programmiert finde ich das auch nicht!
Weiß jemand Rat?
Danke
Adi

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro wartet auf Rückkehr?
06.02.2008 15:09:38
Chris
Servus,
wie wär's damit:

Sub DeinMakroA ()
' Anfang deines Makros A
' ab hier Öffnen und anderes Makro
Workbooks.Open Filename:=Mappe
Makro B
ActiveWorkbook.Close
Weiter mit Makro A
End Sub


Gruß
Chris

AW: Makro wartet auf Rückkehr?
06.02.2008 15:23:23
Adi
Danke Chris.
Das Problem ist, dass die Schritte in der anderen Datei (Datei B) gerade nicht vorgegeben werden können. Der User muss mal einen Datensatz ändern, mal löschen, mal einen neuen Datensatz anlegen, eventuell neu sortieren etc.
Erst durch das Schließen der Datei B, soll's mit dem Makro weiter gehen.
Sonst würde Dein Vorschlag natürlich funktionieren. Danke
Noch jemand da draußen mit einer Idee?

Anzeige
AW: Makro wartet auf Rückkehr?
06.02.2008 15:20:43
Knut
Hi,
"... Wehe, der User springt nur mal so hin und her!..."
Während ein Makro läuft, kann User gar nicht springen, weder hin, noch her.
mfg Knut

AW: Makro wartet auf Rückkehr?
06.02.2008 15:32:05
Adi
Danke Knut,
klar, wenn das Makro abläuft, geht erstmal nix anderes. Da hast Du 100% Recht.
Frage: Kann ich ein Makro derart unterbrechen/ aussetzen, dass es erst weiterläuft, wenn "der Grund, weshalb die Datei A 'verlassen' wurde, nicht mehr da ist"?
Oder muss ich mit meiner oben beschriebenen Hilfkonstruktion leben?
Danke

AW: Makro wartet auf Rückkehr?
06.02.2008 15:47:04
Knut
Hi,
wenn du auf Makros in der "anderen" Mappe verzichten willst, geht es nur mit
einer periodischen Abfrage ob "...der Grund, weshalb die Datei A 'verlassen' wurde, nicht mehr da ist"?..."
Dazu bietet sich ein API-Timer an oder, wenn eine Periode von einer Sekunde reicht,
Application On Time.
mfg Knut

Anzeige
AW: Makro wartet auf Rückkehr?
06.02.2008 16:28:41
anton
Hallo Adi,
versuch's mal so:

Sub b()
  Dim WshShell As Object  
  Set WshShell = CreateObject("Wscript.Shell")  
 'Datei B in neuer Excelinstanz starten
  WshShell.Run "excel C:\DOKUME~1\Anton\Desktop\Wert.xls", , 1
 'nach dem Schließen der 2.Instanz geht's weiter
  MsgBox "WEITER"
End Sub  

mfg Anton

Anzeige
AW: Makro wartet auf Rückkehr?
06.02.2008 16:45:23
Adi
Hallo Anton,
Supi, Supi, Supi!
Gerade hatte ich mich schon damit abgefunden, dass ich's mit einem zweigeteilten Makro und Workbook_Activate umsetzte ... und dann Deine Antwort.
Genau das hab' ich gesucht.
Getestet und für "gut" befunden.
Werde dem Makro eine Kommentarzeile hinzufügen 'Honor to Anton' - dann bist Du hier verewigt.
Supi, Supi, Supi!
Kannst Du mir vielleicht noch sagen, wo ich mich einlesen kann, wenn ich verstehen will
was es mit dem Object WshShell auf sich hat und
warum es dann aber CreateObject("Wscript.Shell") heißt
Gruß
Adi

Anzeige
gelöst
06.02.2008 17:37:46
Adi
Vielen Dank nochmals ...

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige