Ich habe hier ein kleines Problem mit einer "Public-Variablen". Diese wird in "Diese Arbeitsmappe" initialisiert, und in Workbook open auf "False" gesetzt:
Public xSave As Boolean
Private Sub Workbook_open()
Application.ScreenUpdating = False
'Speichern einschalten:
xSave = False 'True = Aus; False = Ein!!!
ComboBox1_Change
ComboBox2_Change
Range("H5").Select
If ActiveCell.Value = "" Then
Range("A1").Select
Schreibschutz_Ein
UserForm1.Show
Else
Range("A1").Select
End If
Application.ScreenUpdating = True
End Sub
Nun der Code in "User Form1": Beim drücken von ComBut3 soll der Wert auf "True" gesetzt werden:
Public xSave As Boolean
Private Sub CommandButton3_Click()
Dim xSave As Boolean
'Nur anschauen!
xSave = True
UserForm1.Hide
End Sub
Das Speichern soll dadurch verhindert werden. Die Abfrage hierfür befindet sich ebenfalls in "Diese Arbeitsmappe:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If xSave = True Then
MsgBox ("Speichern nicht möglich!")
Else
End If
Cancel = xSave
End Sub
Der Wert für xSave ändert sich laut Überwachung nach "Open Workbook" allerdings nicht mehr! Was mache ich verkehrt? Womöglich liegt es daran, daß ich "xSave" zweimal deklariere? Tue ich das allerdings nicht, bekomme ich in der UserForm eine Fehlermeldung...
Hoffe mal, es ist so einigermaßen verständlich!
Danke schonmal im Vorraus
Gruß