Registriert seit: 09.07.2020
Version(en): Office 365
05.07.2021, 11:22
Hallo zusammen,
Ich habe folgendes Problem:
In meiner Datei wird immer wieder vergessen einige Zellen auszufüllen.
Darum wäre es genial wenn Excel einen bevor man Speichert mit einer Meldung aufmerksam macht das die Pflichtangaben noch nicht ausgefüllt sind.
Der absolute Wahnsinn wäre noch wenn vielleicht diese Zellen noch farbig hervor gehoben werden.
Es würde sich um folgende Zellen Handeln: H8, Q8, H11, Q11. Es muss eine von diesen Zellen mit einem Text gefüllt werden.
Ist die so umsetzbar?
Dankeschön im voraus!
Registriert seit: 03.04.2020
Version(en): Office 365 und 2010
Hallo Pascala,
ja, das geht. - Eine mögliche Variante der einfacheren Art wäre dies:
Code:
Private Sub Text_füllenNorbert()
Tabelle1.Range("H8").Interior.ColorIndex = None
Tabelle1.Range("Q8").Interior.ColorIndex = None
Tabelle1.Range("H11").Interior.ColorIndex = None
Tabelle1.Range("Q11").Interior.ColorIndex = None
If Tabelle1.Range("H8") = "" And _
Tabelle1.Range("Q8") = "" And _
Tabelle1.Range("H11") = "" And _
Tabelle1.Range("Q11") = "" Then
MsgBox "Es muss noch eine Zelle mit Text gefüllt werden"
Else
Tabelle1.Range("H8").Interior.ColorIndex = 5
Tabelle1.Range("Q8").Interior.ColorIndex = 5
Tabelle1.Range("H11").Interior.ColorIndex = 5
Tabelle1.Range("Q11").Interior.ColorIndex = 5
End If
End Sub
Name der Tabelle und gewünschte Farbe noch anpassen.
Grüße
Norbert
Folgende(r) 1 Nutzer sagt Danke an NobX für diesen Beitrag:1 Nutzer sagt Danke an NobX für diesen Beitrag 28
• Pascala
Registriert seit: 09.07.2020
Version(en): Office 365
05.07.2021, 15:07
(Dieser Beitrag wurde zuletzt bearbeitet: 05.07.2021, 15:19 von Pascala.)
Vielen lieben Dank für deine Antwort!
Nur leider speichert er dennoch die Datei ab wenn keiner dieser Zellen befüllt ist.
Hast du vielleicht hierzu noch eine Lösung?
Vielen Dank.
Ich habe es jetzt so angepasst und es funktioniert. :)
Trotzdem vielen Dank für das Helfen!
Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Tabelle1.Range("H8").Interior.ColorIndex = 3
Tabelle1.Range("Q8").Interior.ColorIndex = 3
Tabelle1.Range("H11").Interior.ColorIndex = 3
Tabelle1.Range("Q11").Interior.ColorIndex = 3
If Tabelle1.Range("H8") = "" And _
Tabelle1.Range("Q8") = "" And _
Tabelle1.Range("H11") = "" And _
Tabelle1.Range("Q11") = "" Then
MsgBox "Es muss noch eine Zelle mit Text gefüllt werden"
Cancel = True
Else
Tabelle1.Range("H8").Interior.ColorIndex = None
Tabelle1.Range("Q8").Interior.ColorIndex = None
Tabelle1.Range("H11").Interior.ColorIndex = None
Tabelle1.Range("Q11").Interior.ColorIndex = None
End If
End Sub
Registriert seit: 03.04.2020
Version(en): Office 365 und 2010
Hallo Pascala,
das sollte funktionieren:
Code:
Option Explicit
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Tabelle1.Range("H8").Interior.ColorIndex = 3
Tabelle1.Range("Q8").Interior.ColorIndex = 3
Tabelle1.Range("H11").Interior.ColorIndex = 3
Tabelle1.Range("Q11").Interior.ColorIndex = 3
If Tabelle1.Range("H8") = "" And _
Tabelle1.Range("Q8") = "" And _
Tabelle1.Range("H11") = "" And _
Tabelle1.Range("Q11") = "" Then
MsgBox "Es muss noch eine Zelle mit Text gefüllt werden"
Cancel = True
Else
Tabelle1.Range("H8").Interior.ColorIndex = xlNone
Tabelle1.Range("Q8").Interior.ColorIndex = xlNone
Tabelle1.Range("H11").Interior.ColorIndex = xlNone
Tabelle1.Range("Q11").Interior.ColorIndex = xlNone
MsgBox "Tabelle wurde gespeichert"
End If
End Sub
Grüße
Norbert
Folgende(r) 1 Nutzer sagt Danke an NobX für diesen Beitrag:1 Nutzer sagt Danke an NobX für diesen Beitrag 28
• Pascala