想要删除不包含任何数据验证的单元格的Alt +向下箭头功能

时间:2017-05-08 11:43:26

标签: excel

我有一张包含大量数据输入字段的Excel表格。有些人有下拉菜单,我是Alt +向下箭头进行选择。但是对于不包含任何数据验证下拉列表的单元格,如果我按Alt +向下箭头,则会显示最近在同一列中输入的值。 有办法阻止这个吗? enter image description here

如果我在单元格B6中按Alt + Down,我不想要此建议框。 关闭自动填充没有帮助。

1 个答案:

答案 0 :(得分:1)

知道alt + up也可以打开下拉列表,可以这样做:

Private Sub Setup()
    Application.OnKey "%{DOWN}", "HandleAltDown"
End Sub

Private Sub HandleAltDown()
    If HasValidation(Application.ActiveCell) Then
        Application.SendKeys "%{UP}"
    End If
End Sub

Function HasValidation(cell As range) As Boolean
    Dim t: t = Null

    On Error Resume Next
    t = cell.Validation.Type
    On Error GoTo 0

    HasValidation = Not IsNull(t)
End Function

效果很好。 HasValidation来自以下答案: https://stackoverflow.com/a/31346246/2862952