这应该很简单,不知道我为什么遇到这个麻烦..... 在用户输入数据的数据输入范围中,表单的“左”和“右”侧。并非所有给定行中的数据都必须填写。我想创建一个宏(并将其分配给热键IE ctrl-z),这样如果它被命中,它将把活动单元定位在当前行和列“X”。换句话说,按下ctrl-Z将导致光标跳转到“X”列
答案 0 :(得分:1)
在这种情况下,列“x”实际上是列E:
Sub ToColE()
Const colE = 5
Dim offset As Integer
offset = colE - ActiveCell.Column
ActiveCell.offset(rowOffset:=0, columnOffset:=offset).Activate
End Sub
答案 1 :(得分:1)
以下任何一种陈述都应该起作用。从“工具”菜单中指定宏快捷方式 - >宏。
Public Sub SelectStuff()
Cells(3, 5).Select
Rows(17).Select
End Sub
答案 2 :(得分:1)
试试这个
Sub MoveLeftOnForm()
Dim rn As Integer
rn = ActiveCell.Row
Range("B" & rn).Select
End Sub
它假设B是表格中最左边的列。
答案 3 :(得分:0)
此代码应该为您完成:
Public Sub SetUpKeyboardShortcut()
Application.OnKey "^z", "SelectColInSelectedRow"
End Sub
Public Sub SelectColInSelectedRow()
Const ColToSelect = "X"
Range(ColToSelect & CStr(Selection.Row)).Select
End Sub
只需在ThisWorkbook模块的Workbook_Open事件中调用SetUpKeyboardShortcut。我相信上面的代码需要存储在标准模块中。
希望有帮助...
答案 4 :(得分:0)
这将有效:
Public Sub go()
Cells(ActiveCell.Row, 5).Activate
End Sub
只需将“5”替换为您想要的任何列号。您应该可以从宏菜单上的选项中分配ctrl + z热键。