Anzeige
Archiv - Navigation
1180to1184
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

Über Makro "Signal" an andere XLSM Datei geben

Über Makro "Signal" an andere XLSM Datei geben
Holger
Hallo,
bevor ich anfange etwas zu programmieren, brauche ich ein Konzept und dafür
bräuchte ich eure Denkanstöße.
Es gibt zwei xlsm Dateien:
Wenn in Datei1 eine bestimmte Bedingung erfüllt ist, soll eine Message an Datei gesendet werden,
damit dort weitere Aktionen erfolgen.
Bislang gebe ich aus Datei1 eine Textdatei aus mit WAHR oder FALSCH und lese diese dann
in Datei2 ein. Das Problem hierbei: Wenn die Datei nicht zum richtigen Zeitpunkt eingelesen wird,
ändert sich der Wert wieder und Datei2 hat nichts mitbekommen.
Also was tun? Datei2 kann geöffnet oder geschlossen sein, ist freigegeben für MultiUserEditing.
Meine ideen wären entweder die Werte direkt in Datei2 zu schreiben oder gleich das Makro von Datei2 von Datei1 aus zu starten. Beides weiß ich nicht wie und auch Tante Google bringt nichts brauchbares.
Könnt ihr helfen?
Gruß
Holger

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Über Makro "Signal" an andere XLSM Datei geben
21.10.2010 11:01:23
Rudi
Hallo,
oder gleich das Makro von Datei2 von Datei1 aus zu starten

siehe Application.Run
Gruß
Rudi
Application.Run geht nicht
21.10.2010 11:27:04
Holger
Hi Rudi,
Application Run funktioniert nicht weil erstens ich nicht weiss wie der Aufruf ist, wenn die Datei2 schon geöffnet und zweitens kommt hier immer Laufzeitfehler 1004 "makro unbekannt".
Der Name stimmt überein, es ist auch als Publich definiert und dennoch findet er es nicht.
Habe hier im Forum schon gesucht und jemand hatte das gleiche Problem wie ich.
AW: Application.Run geht nicht
21.10.2010 11:41:18
Rudi
Hallo,
das aufgerufene Makro in Datei2 muss in einem Modul stehen.
In Datei1.xls:
Sub CallMeinMakro()
Dim wkb As Workbook, wkb2 As Workbook
Const sDatei As String = "n:\test\datei2.xls"
Const sMakro As String = "MeinMakro"
For Each wkb In Workbooks
If LCase(wkb.FullName) = LCase(sDatei) Then Set wkb2 = wkb
Next
If wkb2 Is Nothing Then
Set wkb2 = Workbooks.Open(sDatei)
End If
Application.Run wkb2.Name & "!" & sMakro
End Sub

Gruß
Rudi
Anzeige
In einem Modul?
21.10.2010 13:44:13
Holger
Hi Rudi,
so einfach ist das also, ein schon geöffnetes Workbook zu öffnen *Seufz* und ich habe da mit _ umständlichen File

Function rumgekaspert ;).
Zu meiner Frage. Was meinst du damit, das angesprochenen Modul muss in einen Makro stehen?
So?

Sub Test
Call Machwas
End Sub
Und machwas rufe ich dann im Application Run auf oder wie?
AW: In einem Modul?
21.10.2010 14:58:17
Rudi
Hallo,
Was meinst du damit, das angesprochenen Modul muss in einen Makro stehen?

Das hab ich aber umgekehrt geschrieben.
Für mein Bsp. in Datei2.xls Modul1
Sub MeinMakro()
MsgBox "Da bin ich!",,"Hallo"
End Sub
Gruß
Rudi
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige