VBA Code auch auf leeres Feld reagieren

Habs nochmal laufen lassen mit f. Hinweis: 13 Typenunverträglichkeit. Die Spalte ist als Datumsformat gespeichert. Ich habe das Datum gelöscht, hierbei trat der Fehler auf. Wenn ich es nur verändere passt alles.
 
Zuletzt bearbeitet:
Danke für die Unterstützung, und so hab ich's hinbekommen. Lässt sich auch beliebig oft wiederholen. Gruß Josef
Mein Erfolgserlebnis:
Code:
If txtGeburtstag.Text = "" Then
    rngRow.Cells(, colAtGeburtstag).Value = ""
ElseIf IsDate(txtGeburtstag.Text) Then
    rngRow.Cells(, colAtGeburtstag).Value = CDate(txtGeburtstag.Text)
Else
End If
 
Und wenn du das mehrfach brauchst, dann mache eine Funktion draus
Visual Basic:
Sub setDateCellFromFormField(byRef iFormField, byRef ioTargetCell As Range)
    If iFormField.Text = "" Then
        ioTargetCell.Value = ""
    ElseIf IsDate(iFormField.Text) Then
        ioTargetCell.Value = CDate(iFormField.Text)
    End If
End Sub
und der Aufruf im Code
Visual Basic:
setDateCellFromFormField txtGeburtstag, rngRow.Cells(, colAtGeburtstag)
 
Danke für die zusätzliche Codeform, wäre wahrscheinlich wesentlich einfacher zu händeln wenn mehrere Datumsfelder betroffen sein könnten. Bin nicht so fit um es richtig einzuordnen. Gruß Josef
 
Zurück