我正在做一个用户可以更好地输入数据的Excel。
我举了一个我想要达到的目标的例子: Input data direction on the excel
所以...用户开始在A2输入数据,然后按“ Enter”按钮,所选单元格转到B2。用户在B2单元中输入数据并再次按Enter后,光标将移至A3,依此类推。 这就是我想在excel表格上实现的动作。 每次用户按下“ Enter”按钮时,A2-> B2-> A3-> B3-> A4-> B4 ...
我尝试阻止不是A和B列的所有其他列,并使用宏使用以下代码:
'Private Sub Workbook_Open()
' Application.MoveAfterReturnDirection = xlToRight
'End Sub
'Private Sub Workbook_BeforeClose(Cancel As Boolean)
' Application.MoveAfterReturnDirection = xlDown
'End Sub
但是当光标到达最后一个活动单元格时,如果我按“ Enter”按钮,则光标将跳到工作表的第一个单元格。
有什么想法吗?谢谢!
答案 0 :(得分:0)
保留更改MoveAfterReturnDirection
的代码并将以下内容添加到工作表中:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 2 Then Range("A" & Target.Row + 1).Select
End Sub
或者,请勿触摸用户的偏好设置并使用:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 1 Then Range("B" & Target.Row).Select
If Target.Column = 2 Then Range("A" & Target.Row + 1).Select
End Sub
在工作表中