Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Speichern nicht vor erledigter Fehlermeldung zulassen...





Frage

Hallo Excel-Gemeinde, ich habe mir ein Wochenübersichtsblatt erstellt, in dem die Arbeitnehmer pro Tag die Kostenstellen, die Lohnart und die gebrauchte Zeit eintragen. Über die Funktion Gültigkeit habe ich bereits einen großen Teil von Falscheintragungen erschlagen, die dann entsprechend sofort geändert müssen. Allerdings kann man diese Gültigkeit austricksen und drum habe ich mir Hilfszellen (AT9:BW26) angelegt, die dann fehlerhafte Eingaben als "Fehler" ausweisen. Da dann jedoch die Gültigkeitsregeln nicht mehr greifen, habe ich mir überlegt, ob man das nicht irgendwie per Makro abfangen kann... und da kommt jetzt meine Frage an Euch: Gibt es eine Möglichkeit vor dem Speichern einer Datei einen Checklauf zu starten, der die Zellen Z9:Z26 nach dem Wort "Fehler" durchsucht und falls er dort das Wort findet, dann eine Msg-box als Hinweis zu öffnen und gleichzeitig das speichern auch solange zu verhindern, bis alle "Fehler" in "OK" umgewandelt wurden? Dieser Ablauf zur "Fehler"-suche könnte dann über den eigenen Wochenblatt speichern-Button (siehe Z2) gestartet werden, wenn die Funktionen des Speicher-Buttons in der Symbolleiste bzw. die Befehle über Datei - speichern bzw. speichern untern in diesem Fall gesperrt würden. Vielleicht hat ja auch jemand eine ganz andere Idee und kann mir da einfach weiterhelfen. Zum hoffentlich besseren Verständnis gibt es hier einen Link auf meine Datei.  http://upload.npcfighter.de/files/36/3746/Zeitlohnschein%20-%20Metallbau%20Sonder.XLT Ich bedanke mich im Voraus schon mal bei all denen, die sich meine Frage anschauen und versuchen, mir eine Hilfestellung zu geben. In diesem Sinne.... have a nice Day... Gruß Helmut

Antwort 1 von Tomschi

Hallo Helmut!

Ich bin kein VBA-Profi und ich habe Deine Datei jetzt auch nicht heruntergeladen, aber ich würde es eventuell so machen.

In "DieseArbeitsmappe"
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

If Range("a1") <> 0 Then
Cancel = True
MsgBox "Bitte Felder korrekt ausfüllen."
Else
End If

End Sub

Da Du ja bereits eine Hilfsspalte hast, zähle die "Fehler" im Bereich Z9:Z26. Falls dort Null steht --> in meinem Beispiel Range("a1") dann eben die Meldung.

Ciao

Tom

Antwort 2 von finger59

Hi Tom,

vielen Dank für Deine Unterstützung.

Ich habe zwar erst ein wenig auf dem Schlauch gestanden mit dem A1 ;-), aber beim dritten lesen kam die Erleuchtung und es hat funktioniert.

Werde noch ein klein wenig daran feilen, aber das passt schon.

Nochmals vielen Dank....

have a nice Day.... Gruß Helmut

Antwort 3 von Tomschi

Guten Morgen Helmut!

Sorry, für meine unklare Ausdrucksweise.
Stand beim Formulieren schon ein wenig unter Zeitdruck.

Zum Glück hast Du dann doch noch herausgefunden was ich gemeint habe.

Ciao

Tom

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: