Thema Datum  Von Nutzer Rating
Antwort
25.10.2022 15:34:16 Dominik
NotSolved
25.10.2022 17:36:00 Gast7777
NotSolved
Rot Before Save schließen verhindern
26.10.2022 07:40:46 Dominik
NotSolved
26.10.2022 12:24:40 Der Steuerfuzzi
NotSolved

Ansicht des Beitrags:
Von:
Dominik
Datum:
26.10.2022 07:40:46
Views:
593
Rating: Antwort:
  Ja
Thema:
Before Save schließen verhindern

Servus,

Danke für dein Antwort.

Leider wird die Datei Trotzdem geschlossen.

Ich habe jetzt mal beim öffnen der Datei das UnSaved auf False gesetzt, aber das lässt sich das Programm nicht mehr schlißen, wenn nicht gespeichert wurde. 

Das habe ich zwar mit einer MsgBox gelöst , aber vielleicht gibt es ja noch eine andere Möglichkeit.

 

hier nochmal der Code.

Option Explicit

Private Sub Workbook_Open()

Application.Calculation = xlCalculationAutomatic
UnSaved = True
End Sub


Private Sub Workbook_BeforeClose(Cancel As Boolean)

If UnSaved Then
MsgBox ("Bitte erst speichern")
End If

If UnSaved Then Cancel = True

End Sub

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

'Variable für MsgBox
Dim Msg1, Style1, Title1, Icon1, kein_workcenter, Msg2, Style2, Title2, Icon2, Datum_in_Zukunft

Dim Zeile As Long
Dim Heute

Dim tbl As ListObject
Set tbl = Tabelle2.ListObjects(1)


'MsgBox1
Style1 = vbExclamation
Title1 = "Kein Workcenter angegeben"
'MsgBox2
Msg2 = "Datum liegt in der Zukunft. Ist das korrekt?"
Style2 = vbQuestion + vbYesNo
Title2 = "Richtiges Datum?"

Heute = Date


For Zeile = 1 To tbl.ListRows.Count
  If tbl.DataBodyRange(Zeile, 2) <> "" Then
      If tbl.DataBodyRange(Zeile, 4) = "" Then
        kein_workcenter = MsgBox("In Zeile " & Zeile + 3 & " wurde kein Workcenter angegeben. Achtung Datei wurde nicht gespeichert", Style1, Title1)
        Cancel = True: UnSaved = True
        Exit Sub
      End If
  End If
Next Zeile

If (Tabelle2.Range("B1").Value) > Heute Then
  Datum_in_Zukunft = MsgBox(Msg2, Style2, Title2)
  If Datum_in_Zukunft = vbNo Then
    DatumSchicht.Show
    Cancel = True: UnSaved = True
    Exit Sub
  End If
 
End If

x = 0

Sheets("Übersicht JobCard").Select
Sheets("Übersicht JobCard").Protect
Sheets("JobCard erstellen").Protect

UnSaved = False

End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
25.10.2022 15:34:16 Dominik
NotSolved
25.10.2022 17:36:00 Gast7777
NotSolved
Rot Before Save schließen verhindern
26.10.2022 07:40:46 Dominik
NotSolved
26.10.2022 12:24:40 Der Steuerfuzzi
NotSolved