Mehrfachauswahl Text ändern
15.08.2024 07:46:39
Janina16
ich habe ein Problem mit der Mehrfachauswahl.
Diesen Code nutze ich, damit ich über ein dropdown mehrere Möglichkeiten in eine Zelle schreiben kann, nun ist das Problem, dass der Text nur komplett gelöscht werden kann. Es wäre jedoch sehr praktisch, wenn der Text auch teilweise geändert werden könnte.
Private Sub Worksheet_Change(ByVal Target As Range)
'** Mehrfachauswahl über DropDown-Liste (Gültigkeitsprüfung)
'** Einfügen im Code-Container des betreffenden Arbeitsblattes
'** Dimensionierung der Variablen
Dim rngDV As Range
Dim wert_old As String
Dim wertnew As String
'** Errorhandling
On Error GoTo Errorhandling
'** Mehrfachauswahl im definierten Bereich (Bsp. B4:B14) durchführen
If Not Application.Intersect(Target, Range("J7:AU900")) Is Nothing Then
'**Range definieren
Set rngDV = Target.SpecialCells(xlCellTypeAllValidation)
If rngDV Is Nothing Then GoTo Errorhandling
'** Prüfen, ob eine gültige Zelle ausgewählt wurde und Werte eintragen
If Not Application.Intersect(Target, rngDV) Is Nothing Then
Application.EnableEvents = False
wertnew = Target.Value
Application.Undo
wertold = Target.Value
Target.Value = wertnew
If wertold > "" Then
If wertnew > "" Then
Target.Value = wertold & ", " & wertnew
End If
End If
End If
Application.EnableEvents = True
End If
Errorhandling:
Application.EnableEvents = True
End Sub
Diesen Code nutze ich, damit ich über ein dropdown mehrere Möglichkeiten in eine Zelle schreiben kann, nun ist das Problem, dass der Text nur komplett gelöscht werden kann. Es wäre jedoch sehr praktisch, wenn der Text auch teilweise geändert werden könnte.
Bei der Datenüberprüfung habe ich auch schon die Einstellung von im Reiter "Fehlermeldung" ausgeschaltet. Dann kann der Text zwar geändert werden, sobald man aber Enter drückt, wird der alte Text dahinter geschrieben.
Grundsätzlich ist es ja genau das, was der Code machen soll, also alten Text koieren und zum neuen hinzufügen. Gibt es ein Möglichkeit es anzupassen?
Vielen Dank.
Anzeige