Ich verwende den folgenden VBA-Code, um die automatische Vervollständigung bei der Eingabe in die Dropdown-Liste mithilfe eines Kombinationsfelds zu ermöglichen.
Dieser Code deaktiviert die Funktionen „Rückgängig“ und „Wiederherstellen“ auf den Blättern, auf die der VBA-Code angewendet wird. Kann der VBA-Code geändert werden, um diese Funktionen zu ermöglichen?
Private Sub Worksheet_SelectionChange (ByVal-Ziel als Bereich)
'Aktualisieren durch Extendoffice: 2018 / 9 / 21
Dim xCombox als OLEObject
Dim xStr als Zeichenfolge
Dim xWs als Arbeitsblatt
Dim xArr
Legen Sie xWs = Application.ActiveSheet fest
On Error Resume Next
Setze xCombox = xWs.OLEObjects("TempCombo")
Mit xCombox
.ListFillRange = ""
.LinkedCell = ""
.Sichtbar = Falsch
Ende mit
Wenn Target.Validation.Type = 3 Then
Target.Validation.InCellDropdown = False
Abbrechen = Wahr
xStr = Ziel.Validierung.Formel1
xStr = Rechts(xStr, Len(xStr) - 1)
Wenn xStr = "" dann Sub beenden
Mit xCombox
.Visible = Wahr
.Links = Ziel.Links
.Oben = Ziel.Oben
.Breite = Ziel.Breite + 5
.Höhe = Ziel.Höhe + 5
.ListFillRange = xStr
Wenn .ListFillRange = "" Dann
xArr = Split(xStr, ",")
Me.TempCombo.List = xArr
End If
.LinkedCell = Zieladresse
Ende mit
xCombox.Activate
Me.TempCombo.DropDown
End If
End Sub
Private Sub TempCombo_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Wählen Sie Fallschlüsselcode
Fall 9
Application.ActiveCell.Offset(0, 1).Activate
Fall 13
Application.ActiveCell.Offset(1, 0).Activate
End Select
End Sub
Dieser Code deaktiviert die Funktionen „Rückgängig“ und „Wiederherstellen“ auf den Blättern, auf die der VBA-Code angewendet wird. Kann der VBA-Code geändert werden, um diese Funktionen zu ermöglichen?
Private Sub Worksheet_SelectionChange (ByVal-Ziel als Bereich)
'Aktualisieren durch Extendoffice: 2018 / 9 / 21
Dim xCombox als OLEObject
Dim xStr als Zeichenfolge
Dim xWs als Arbeitsblatt
Dim xArr
Legen Sie xWs = Application.ActiveSheet fest
On Error Resume Next
Setze xCombox = xWs.OLEObjects("TempCombo")
Mit xCombox
.ListFillRange = ""
.LinkedCell = ""
.Sichtbar = Falsch
Ende mit
Wenn Target.Validation.Type = 3 Then
Target.Validation.InCellDropdown = False
Abbrechen = Wahr
xStr = Ziel.Validierung.Formel1
xStr = Rechts(xStr, Len(xStr) - 1)
Wenn xStr = "" dann Sub beenden
Mit xCombox
.Visible = Wahr
.Links = Ziel.Links
.Oben = Ziel.Oben
.Breite = Ziel.Breite + 5
.Höhe = Ziel.Höhe + 5
.ListFillRange = xStr
Wenn .ListFillRange = "" Dann
xArr = Split(xStr, ",")
Me.TempCombo.List = xArr
End If
.LinkedCell = Zieladresse
Ende mit
xCombox.Activate
Me.TempCombo.DropDown
End If
End Sub
Private Sub TempCombo_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Wählen Sie Fallschlüsselcode
Fall 9
Application.ActiveCell.Offset(0, 1).Activate
Fall 13
Application.ActiveCell.Offset(1, 0).Activate
End Select
End Sub