星期五,02 August 2019
  3 回复
  7.1K访问
0
投票
解开
我使用以下 VBA 代码在使用组合框输入下拉列表时允许自动完成。

此代码禁用应用 VBA 代码的工作表上的“撤消”和“重做”功能。 可以修改 VBA 代码以允许这些功能吗?

Private Sub Worksheet_SelectionChange(作为范围的ByVal目标)
'更新者 Extendoffice:2018 / 9 / 21
将 xCombox 调暗为 OLEObject
将 xStr 调暗为字符串
将 xWs 调暗为工作表
暗淡 xArr

设置 xWs = Application.ActiveSheet
出错时继续下一步
设置 xCombox = xWs.OLEObjects("TempCombo")
使用 xCombox
.ListFillRange = ""
.LinkedCell = ""
.可见=假
结束
如果 Target.Validation.Type = 3 那么
Target.Validation.InCellDropdown = 假
取消 = 真
xStr = 目标.验证.公式1
xStr = 右 (xStr, Len(xStr) - 1)
如果 xStr = "" 则退出 Sub
使用 xCombox
.可见=真
.Left = 目标.Left
.Top = 目标.Top
.Width = 目标.Width + 5
.Height = 目标.Height + 5
.ListFillRange = xStr
如果 .ListFillRange = "" 那么
xArr = 拆分(xStr,“,”)
Me.TempCombo.List = xArr
结束如果
.LinkedCell = 目标.地址
结束
xCombox.激活
我.TempCombo.DropDown
结束如果
END SUB
Private Sub TempCombo_KeyDown(ByVal KeyCode As MSForms.ReturnInteger,ByVal Shift As Integer)
选择案例键码
案例9
Application.ActiveCell.Offset(0, 1).激活
案例13
Application.ActiveCell.Offset(1, 0).激活
最终选择
END SUB
2年前
·
#1985
0
投票
解开
这个问题解决了吗? 我有同样的问题
2年前
·
#1986
0
投票
解开
这个问题有回答吗? 我有同样的问题,真的需要撤消功能。 
0
投票
解开
嗨,下一代,

抱歉,应用任何 VBA 代码后您无法撤消或重做。 如果您想使用撤消或重做功能,请使用 Kutools 功能。

阿曼达
  • 页:
  • 1
目前还没有回复。