AW: Userform unterdrücken - wenn Datei von andere Datei geöffnet
21.11.2024 13:17:02
volti
Hallo MisterTino,
die Nutzung von Variablen wie von Oberschlumpf vorgeschlagen scheint mir ein gangbarer Weg.
Grundsätzlich gäbe es u.a. die Möglichkeiten über API-Funktionen eine Inidatei (Textdatei) mit einem Wert zu füllen, der von anderen Dateien dann wieder ausgelesen und zurückgesetzt werden kann.
Oder einen Wert in die Zwischenablage kopieren und diesen beim Öffnen der zweiten Datei auslesen oder weitere Möglichkeiten.
Hier zeige ich noch mal eine weitere Möglichkeit über eine Umgebungsvariabe als Beispiel. (Musst Du noch entsprechend anpassen)
Code:
Private Declare PtrSafe Function SetEnvironmentVariableA Lib "kernel32" ( _
ByVal lpName As String, ByVal lpValue As String) As Long
Private Declare PtrSafe Function GetEnvironmentVariableA Lib "kernel32" ( _
ByVal lpName As String, ByVal lpBuffer As String, ByVal nSize As Long) As Long
Sub SetzeMich_inDatei1()
Dim sTxt As String * 8
SetEnvironmentVariableA "LadeUserform", "Tu es nicht!" ' Variable setzen
' Öffne andere Datei....
SetEnvironmentVariableA "LadeUserform", "" ' Variable zurücksetzen
End Sub
Sub LadeUserform_inDatei2()
Dim sTxt As String * 16, l As Long
l = GetEnvironmentVariableA("LadeUserform", sTxt, 16) ' Variable auslesen
If Left$(sTxt, l) Like "Tu es nicht!" Then
SetEnvironmentVariableA "LadeUserform", "" ' Variable zurücksetzen
Else
UserForm1.Show
End If
End Sub
_________________________
viele Grüße aus Freigericht 😊
Karl-Heinz