AW: Prüfung der Eingaben
16.08.2016 15:34:16
Piet
Hallo,
anbei zwei kleine Demo Makros die zeigen wie man das Problem lösen kann.
1. Fall mit: - If IsDate(Wert) oder If Not IsDate(Wert)
2. Fall mit: - If kFind Is Nothing oder If Not kFind Is Nothing (Set kFind)
Die Set Anweisung kann man am einfachsten so wie man sie in Echt haben will
mit dem Makro Recorder aufzeichnen und muss sie auf die Set Form umschreiben.
Dabei hat man freie Auswahl bezüglich der Such Order. Suche im ganzen Blatt,
oder nur in einem Range Bereich. Ganze Zelle, Teilwort, Gross- Kleinschreibung.
Einfach mal selbst ausprobieren wie man das ins bestehende Makro einbauen kann.
mfg Piet
Sub Datum_prüfen()
Wert = [b3].Value
If Not IsDate(Wert) Then MsgBox "kein gültiges Datum"
End Sub
Sub Kunde_prüfen()
Dim kFind As Object, SuchName As String
SuchName = "Mustermann"
Set kFind = Cells.Find(What:=SuchName, After:=ActiveCell, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=True)
'Kunde -nicht gefunden- (Entscheidung)
If kFind Is Nothing Then MsgBox kFind.Address
'Kunde -wurde gefunden- (Entscheidung)
If Not kFind Is Nothing Then MsgBox kFind.Address
Exit Sub
'Find Definitionen:
'Cells.Find - bezieht sich auf das ganze Blatt
'Range("B2:B100").Find bezieht sich auf diesen Bereich
'After:=ActiveCell Suche beginnt ab der Aktiven Zelle
'After:=Range("B2") Suche beginnt ab der Zelle "B2"
'LookAt:=xlWhole vergleicht immer ganze Zelle
'LookAt:=xlPart vergleicht Teil-String in der Zelle
'SearchOrder:=xlByColumns sucht Wert in Spalten
'SearchOrder:=xlByRows sucht Wert in Zeilen
'MatchCase:=True Gross Kleinschrewibung beachten
End Sub