Ich möchte abhängig von unterschiedlichen Nummern, die im Bereich ("B5:B306") stehen, die Einträge aus einigen Zellen der betreffenden Spalte löschen.
Es ist mir aber noch nicht gelungen den Suchbereich auf ("B5:B306") einzuschränken. Schon mal herzlichen Dank für die Hilfe!
Private Sub cmdEinträgeLoeschen_Click()
Dim strSuchen As Variant
Dim strFrage As Double
strSuchen = Application.InputBox _
("Mitarbeiter-Nummer", "Löschen") 'Die Mitarbeiternummern steht in Range ("B5:B306")
ActiveSheet.Unprotect
If strSuchen = False Then
Exit Sub
Else
On Error GoTo Errorhandler
Cells.Find(What:=strSuchen).Activate 'Es soll nur innerhalb Range ("B5:B306) gesucht und gefunden werden.
strFrage = MsgBox("Soll die Daten von diesem Mitarbeiter wirklich gelöscht werden?" & _
Chr(13) & ActiveCell.Value & " " & _
ActiveCell.Offset(0, 1).Value & " " & _
ActiveCell.Offset(0, 2).Value, _
vbYesNo, "Löschen")
If strFrage = vbNo Then
Exit Sub
ElseIf strFrage = vbYes Then
ActiveCell.Offset(0, 1).ClearContents 'c
ActiveCell.Offset(0, 2).ClearContents 'd
' ActiveCell.Offset(0, 3).ClearContents 'e Inhalte dieser Zelle nicht löschen
ActiveCell.Offset(0, 4).ClearContents 'f
' ActiveCell.Offset(0, 5).ClearContents 'g Inhalte dieser Zelle nicht löschen
' ActiveCell.Offset(0, 6).ClearContents h Inhalte dieser Zelle nicht löschen
ActiveCell.Offset(0, 7).ClearContents 'i
ActiveCell.Offset(0, 8).ClearContents 'j
' ActiveCell.Offset(0, 9).ClearContents 'k Inhalte dieser Zelle nicht löschen
ActiveCell.Offset(0, 10).ClearContents 'l
' ActiveCell.Offset(0, 11).ClearContents 'm Inhalte dieser Zelle nicht löschen
ActiveCell.Offset(0, 12).ClearContents 'n
ActiveCell.Offset(0, 13).ClearContents 'o
ActiveCell.Offset(0, 14).ClearContents 'P
End If
Exit Sub
End If
Errorhandler:
MsgBox ("Diese Mitarbeiter-Nummer ist nicht vorhanden")
ActiveSheet.Protect
End Sub