Hallo,
ich bin momentan am verzweifeln. Ich kann Kundendaten mittels einer Kundennummer aufrufen und mir über eine UserForm anzeigen lassen.
Wenn ich diese dann aber Ändern / Bearbeiten möchte und auf speichern klicke erstellt er einen neuen Kunden anstatt in der Zeile die er ausgelesen hat die Daten zu ändern.
Modul zum Auslesen der Kundennummer:
Sub KundenSuche()
Dim i As Integer
Dim kD As Integer
Dim AnzZahlen As Long
AnzZahlen = Worksheets("Kontakte").UsedRange.Rows.Count
kD = Application.InputBox("Bitte Kundennummer angeben", "Kundennummer", Type:=1)
For i = 1 To AnzZahlen
If kD = Worksheets("Kontakte").Cells(i, 1).Value Then
With Worksheets("Kontakte")
UserForm1.TextBox_Name.Value = .Cells(i, 2).Value
UserForm1.TextBox_Tel.Value = .Cells(i, 3).Value
UserForm1.ComboBox1.Value = .Cells(i, 4).Value
UserForm1.TextBox_Typ.Value = .Cells(i, 5).Value
UserForm1.TextBox_Schluessel.Value = .Cells(i, 6).Value
UserForm1.TextBox_HU.Value = .Cells(i, 7).Value
UserForm1.TextBox_Notizen.Value = .Cells(i, 9).Value
End With
End If
Next i
If UserForm1.TextBox_Name = "" Then
MsgBox "Kundennummer nicht vorhanden" & Chr(10) & "Bitte erneut eingeben!", vbCritical, "Fehler"
Exit Sub
Else
MsgBox "Kunden gefunden"
End If
UserForm1.Show
End Sub
Und dann der Code vom Button Speichern in der UserForm:
Sub KundenSuche()
Dim i As Integer
Dim kD As Integer
Dim AnzZahlen As Long
AnzZahlen = Worksheets("Kontakte").UsedRange.Rows.Count
kD = Application.InputBox("Bitte Kundennummer angeben", "Kundennummer", Type:=1)
For i = 1 To AnzZahlen
If kD = Worksheets("Kontakte").Cells(i, 1).Value Then
With Worksheets("Kontakte")
UserForm1.TextBox_Name.Value = .Cells(i, 2).Value
UserForm1.TextBox_Tel.Value = .Cells(i, 3).Value
UserForm1.ComboBox1.Value = .Cells(i, 4).Value
UserForm1.TextBox_Typ.Value = .Cells(i, 5).Value
UserForm1.TextBox_Schluessel.Value = .Cells(i, 6).Value
UserForm1.TextBox_HU.Value = .Cells(i, 7).Value
UserForm1.TextBox_Notizen.Value = .Cells(i, 9).Value
End With
End If
Next i
If UserForm1.TextBox_Name = "" Then
MsgBox "Kundennummer nicht vorhanden" & Chr(10) & "Bitte erneut eingeben!", vbCritical, "Fehler"
Exit Sub
Else
MsgBox "Kunden gefunden"
End If
UserForm1.Show
End Sub
|