我在Excel中制作了一个文档,希望用户在其中的Tab键中浏览单元格和组合框以填写。
如果我可以使用数据验证,但是该解决方案不允许自动填充,那么该解决方案将很容易。
我想出了如何从组合框切换到组合框
Private Sub CBO0_KeyDown(ByVal Keycode As MSForms.ReturnInteger, ByVal shift As Integer)
If Keycode = 9 Then
CBO1.Activate
End If
End Sub
我还想出了如何从组合框切换到单元格。
Private Sub CBO1_KeyDown(ByVal Keycode As MSForms.ReturnInteger, ByVal shift As Integer)
If Keycode = 9 Then
Range("D10").Activate
End If
End Sub
剩下的是
我需要在VBA中使用“单元到单元”解决方案,因为Excel中的解决方案在组合框和单元之间不起作用。
要了解Tab顺序,
我无法更改订单,否则整个表格将无法正常工作。
答案 0 :(得分:1)
我假设这些是工作表上的activeX组合框。使用worksheet_change事件,将更改A1和combobox1激活,将更改combobox1和B1选择,将更改B1和Combobox2激活。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Address = "$A$1" Then Me.ComboBox1.DropDown
If Target.Address = "$B$1" Then Me.ComboBox2.DropDown
End Sub
Private Sub ComboBox1_Click()
Me.Range("B1").Select
End Sub
Private Sub ComboBox2_Click()
Me.Range("C1").Select
End Sub