In Workbook_Open eine globale Variable zuweisen
22.07.2025 20:22:14
Bona
habe mir grade den Wolf gegoogelt, aber nichts von allen Vorschlägen hat funktioniert.
Ich möchte eine INI-Datei in den Makros verwenden, prüfe aber beim Start in Workbook_Open(), ob diese INI-Datei existiert. Dieser Status muß dann allen Makros zur Verfügung stehen, sonst müßte ich ja jedesmal vor der Abrage eines INI-Wertes die Existenz prüfen.
Wie oft empfohlen, habe ich die Variable in einem allgemeinen Modul als Public definiert, aber in Workbook_Open() muß ich sie dennoch definieren, sonst Fehlermeldung.
Code in "DieseArbeitsmappe":
Option Explicit
Private Sub Workbook_Open()
Dim sAppName As String, sIniFile As String
sAppName = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - InStr(StrReverse(ActiveWorkbook.Name), "."))
' INI-File vorhanden?
sIniFile = sAppName & ".ini"
If Dir(sIniFile) = "" Then
MsgBox "INI-Datei nicht vorhanden" & Chr(10) & Chr(13) & _
sIniFile, vbOKOnly
Application.Quit
End If
End Sub
Im allgemeinen Modul:
Option Explicit
Public sIniFile As String
Sub FilesTransfer(ByVal control As IRibbonControl)
Dim oRegex As Object
Set oRegex = CreateObject("vbscript.regexp")
oRegex.Pattern = GetIniValue(sIniFile, "Regex", "Date")
...
Was mache ich falsch?
Bona
Anzeige