AW: Daten Ändern
07.04.2020 09:12:15
Torsten
Hallo Gerald,
hoffe, dir gehts gut.
Habe die Find Zeile etwas abgeaendert. Siehe Code. Du hast zwar nach dem Value gesucht, aber da du Lookat:=xlWhole nicht angegeben hast, wird nach jeder Kombination gesucht, die den Wert enthaelt. Deswegen kommst du manchmal zur falschen Zeile. Ab und zu passt es, da der gesuchte Wert der erste gefundene ist. Probier mal:
Private Sub But_Aendern_Click()
Dim findeZelle As Range
Dim Antwort As String
Antwort = MsgBox("Sollen die Patientendaten geändert werden?", vbYesNoCancel, "Datensatzä _
nderung speichern?")
If Antwort = vbYes Then
Set findeZelle = Sheets("Priorität").Range("A9:S48").Find(LfdNr_TB, , LookIn:=xlValues, _
lookat:=xlWhole)
'weiter mit findeZelle.Row oder FindeZelle.Address
If Not findeZelle Is Nothing Then
Cells(findeZelle.Row, 1) = CLng(Me.LfdNr_TB)
Cells(findeZelle.Row, 2) = Me.Vorname_TB
Cells(findeZelle.Row, 3) = Me.Name_TB
Cells(findeZelle.Row, 4) = Me.Telefon_TB
Cells(findeZelle.Row, 6) = CDate(Me.GebDatum_TB)
Cells(findeZelle.Row, 7) = Me.Bemerkungen_TB
Cells(findeZelle.Row, 8) = Me.Diagnose_CB
Cells(findeZelle.Row, 9) = CDate(Me.Diagnosedatum_TB)
Cells(findeZelle.Row, 10) = Me.Tumor_CB
Cells(findeZelle.Row, 11) = Me.Lymphknoten_CB
Cells(findeZelle.Row, 12) = Me.Metastasen_CB
Cells(findeZelle.Row, 13) = Me.Tumorstadium_CB
Cells(findeZelle.Row, 14) = Me.Tumorwachstum_CB
' Cells(findeZelle.Row, 19) = CDate(Me.OPAbgeschlossen_TB)
' ActiveWorkbook.Save
Else
MsgBox "nicht gefunden!", vbExclamation
Exit Sub
End If
ElseIf Antwort = vbNo Then
MsgBox "Datensatz nicht geändert"
Exit Sub
Else
MsgBox "Abgebrochen"
Exit Sub
End If
End Sub
Gruss Torsten