使用箭头键在单元格中定义的值进行导航
我已经编程,但我是新的vba,所以请帮助我。
我想让用户在工作表中select一个单元格(列中的任何单元格),然后他/她应该能够按下“向上”或“向下”箭头键来浏览值。
它类似于一个下拉菜单。
- 例如,我会有预定义的值,如“停止”,“去”,“开始”。
- 当用户select单元格并按一次向上箭头键时,单元格的值变为“GO”,再次按箭头键,值变为“STOP”,等等。
谢谢你的帮助!
第1部分
- 右键单击您的工作表标签
- 查看代码
- 复制并粘贴到下面的代码中
此代码告诉Excel仅在此工作表上运行您的箭头向上和向下的macros。 当您离开工作表时,代码将被停用
Private Sub Worksheet_Activate() Application.OnKey "{UP}", "UpOne" Application.OnKey "{DOWN}", "DownOne" End Sub Private Sub Worksheet_Deactivate() Application.OnKey "{UP}" Application.OnKey "{DOWN}" End Sub
第2部分
- 按ALt&F11一起进入Visual Basic编辑器
- 插入模块
- 复制并粘贴下面的代码
-
按ALt&F11返回到Excel
Sub UpOne() Select Case ActiveCell.Value Case "" ActiveCell.Value = "Ready" Case "Ready" ActiveCell.Value = "Set" Case "Set" ActiveCell.Value = "Go" End Select End Sub Sub DownOne() Select Case ActiveCell.Value Case "" ActiveCell.Value = "Go" Case "Go" ActiveCell.Value = "Set" Case "Set" ActiveCell.Value = "Ready" End Select End Sub
您的代码现在将从中循环
空白(如果为空) – 1)准备好 – 2)设置 – 3)去(用于向上箭头)
空白(如果为空) – 1)去 – 2)设置 – 3)准备好(对于箭头)