Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1400to1404
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

Pflichtfelder in Excel als Vorlage speichern

Pflichtfelder in Excel als Vorlage speichern
19.01.2015 14:01:10
Andre

Hallo,
ich habe folgenden VBA Code

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Worksheets("Tabelle1").Range("C7") = "" Then
MsgBox "Bitte füllen Sie den Kundennamen aus !"
Cancel = True
End If
If Worksheets("Tabelle1").Range("C11") = "-- bitte wählen --" Then
MsgBox "Bitte füllen Sie den Grund des Besuchs aus !"
Cancel = True
End If
If Worksheets("Tabelle1").Range("C13") = "" Then
MsgBox "Bitte füllen Sie die Gesprächsnotizen aus !"
Cancel = True
End If
If Worksheets("Tabelle1").Range("C19") = "" Then
MsgBox "Bitte füllen Sie die Vereinbarungen aus !"
Cancel = True
End If
End Sub

Wie bekomme ich es hin, dass ich eine Vorlagendatei ohne ausgefüllte Felder speichern kann? Ich bekomme natürlich immer eine Fehlermeldung beim Speichern, da er ja abfragt. Und muss ich zwingend diese Pflichfeldprüfung als XLSM speichern oder ist das auch in einer XLS / XLSX möglich?
Danke und Grüße
André

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Pflichtfelder in Excel als Vorlage speichern
19.01.2015 14:17:25
yummi
Hallo Andre,
du könntest in einer anderen (versteckten) Zelle einen Wert eintragen. Wenn der WErt gesetzt ist überspringst du deine Abfragen mit einer umschliessenden if Anweisung.
In AA7 schreibst Du: Vorlage
wenn du den Wert entfernst ist es keien Vorlage mehr.
so etwa:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Worksheets("Tabelle1").Range("AA7") <> "Vorlage" Then    'Spalte AA kannst du dann ja  _
ausblenden
If Worksheets("Tabelle1").Range("C7") = "" Then
MsgBox "Bitte füllen Sie den Kundennamen aus !"
Cancel = True
End If
If Worksheets("Tabelle1").Range("C11") = "-- bitte wählen --" Then
MsgBox "Bitte füllen Sie den Grund des Besuchs aus !"
Cancel = True
End If
If Worksheets("Tabelle1").Range("C13") = "" Then
MsgBox "Bitte füllen Sie die Gesprächsnotizen aus !"
Cancel = True
End If
If Worksheets("Tabelle1").Range("C19") = "" Then
MsgBox "Bitte füllen Sie die Vereinbarungen aus !"
Cancel = True
End If
end if
End Sub
Gruß
yummi

Anzeige
AW: Pflichtfelder in Excel als Vorlage speichern
19.01.2015 14:36:19
Andre
Hi Yummi,
danke erstmal für deine Hilfe, ich glaube ich habe mich missverständlich ausgedrückt.
Was ich erreichen möchte: Ich möchte eine Vorlage mit leeren Pflichtfeldern gespeichert bekommen, um diese an Mitarbeiter zu senden.
Diese sollen dann, wenn Sie die Datei öffnen , und nicht alle Pflichfelder gefüllt sind, eben diese Meldungen/Fehler bekommen, bevor sie speichern können.
Wenn ich dein Beispiel richtig verstehe, kann ich dann zwar die Datei speichern, wenn ich Vorlage in AA7 eintrage, aber dann wird dann ja auch nicht mehr die anderen Felder geprüft.
Danke dir schonmal für weitere Hilfe. Gerne auch andere Lösungen für diese Pflichfeldthematik.
Schöne Grüße
André

Anzeige
AW: Pflichtfelder in Excel als Vorlage speichern
19.01.2015 14:43:27
yummi
Hallo Andre,
dann so ;-) :

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Worksheets("Tabelle1").Range("AA7") <> "Vorlage" Then    'Spalte AA kannst du dann ja  _
ausblenden
If Worksheets("Tabelle1").Range("C7") = "" Then
MsgBox "Bitte füllen Sie den Kundennamen aus !"
Cancel = True
End If
If Worksheets("Tabelle1").Range("C11") = "-- bitte wählen --" Then
MsgBox "Bitte füllen Sie den Grund des Besuchs aus !"
Cancel = True
End If
If Worksheets("Tabelle1").Range("C13") = "" Then
MsgBox "Bitte füllen Sie die Gesprächsnotizen aus !"
Cancel = True
End If
If Worksheets("Tabelle1").Range("C19") = "" Then
MsgBox "Bitte füllen Sie die Vereinbarungen aus !"
Cancel = True
End If
else
Worksheets("Tabelle1").Range("AA7") = ""
end if
End Sub
Dann kansst Du es speichern und löscht die Speere in AA7 automatisch weg beim Speichern.
Ukm sie wieder als Vorlage zu speichern musst du erst wieder Vorlage in AA7 eintragen.
Nicht sehr sicher, sonst über Userabfrage
Gruß
yummi

Anzeige
AW: Pflichtfelder in Excel als Vorlage speichern
19.01.2015 14:50:51
Andre
Danke das klappt :)
Viele Grüße

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige