By eeframe27 on Friday, 02 August 2019
Posted in Excel
Replies 3
Likes 0
Views 7K
Votes 0
I am using the following VBA code to allow for autocomplete when typing in drop down list by using a combo box.

This code disables the "Undo" and "Redo" functions on the sheets that the VBA code is applied to. Can the VBA code be modified to allow these functions?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Update by Extendoffice: 2018/9/21
Dim xCombox As OLEObject
Dim xStr As String
Dim xWs As Worksheet
Dim xArr

Set xWs = Application.ActiveSheet
On Error Resume Next
Set xCombox = xWs.OLEObjects("TempCombo")
With xCombox
.ListFillRange = ""
.LinkedCell = ""
.Visible = False
End With
If Target.Validation.Type = 3 Then
Target.Validation.InCellDropdown = False
Cancel = True
xStr = Target.Validation.Formula1
xStr = Right(xStr, Len(xStr) - 1)
If xStr = "" Then Exit Sub
With xCombox
.Visible = True
.Left = Target.Left
.Top = Target.Top
.Width = Target.Width + 5
.Height = Target.Height + 5
.ListFillRange = xStr
If .ListFillRange = "" Then
xArr = Split(xStr, ",")
Me.TempCombo.List = xArr
End If
.LinkedCell = Target.Address
End With
xCombox.Activate
Me.TempCombo.DropDown
End If
End Sub
Private Sub TempCombo_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Select Case KeyCode
Case 9
Application.ActiveCell.Offset(0, 1).Activate
Case 13
Application.ActiveCell.Offset(1, 0).Activate
End Select
End Sub
Was this ever resolved? I am having the same issue
·
2 years ago
·
0 Likes
·
0 Votes
·
0 Comments
·
Was this question answered? I am having the same issue and really need the undo function. 
·
2 years ago
·
0 Likes
·
0 Votes
·
0 Comments
·
Hi Nextgen,

Sorry that you cannot undo or redo after apply any VBA codes. If you want to use the undo or redo function, please use Kutools features.

Amanda
·
2 years ago
·
0 Likes
·
0 Votes
·
0 Comments
·
View Full Post