ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > 如何VBA程序控制按TAB键时的单元格跳转?

如何VBA程序控制按TAB键时的单元格跳转?

作者:绿色风 分类: 时间:2022-08-17 浏览:107
楼主
kevinchengcw
Q:经常填写表格,很多时候要用鼠标选取,但单元格的几个位置是固定的,有办法让通过VBA程序控制按TAB键时的单元格跳转吗?
A:对于固定的单元格区域完全可以通过VBA来实现跳转控制,附件中给出了一个按TAB键跳转的例子,还有一个相应的变化例子,将TAB键换成了左右方向键,反映了代码的可调整性。

  1. Dim N  '定义公共变量

  2. Sub NextCell()  ' 按TAB键时的跳转位置控制
  3. Arr = Split("a1,b2,c3,b4,c7", ",")
  4. If N < UBound(Arr) Then
  5.     N = N + 1
  6.     Range(Arr(N)).Activate
  7. Else
  8.     N = 0
  9.     Range(Arr(N)).Activate
  10. End If
  11. End Sub

  12. Sub LastCell()  '按SHIFT+TAB时的跳转控制
  13. Arr = Split("a1,b2,c3,b4,c7", ",")
  14. If N > LBound(Arr) Then
  15.     N = N - 1
  16.     Range(Arr(N)).Activate
  17. Else
  18.     N = UBound(Arr)
  19.     Range(Arr(N)).Activate
  20. End If
  21. End Sub

  1. Public Arr '定义数组变量

  2. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  3. mCell = Target.Address
  4. 'Debug.Print mCell
  5. Application.OnKey "{tab}", "nextcell"   '判断按键为TAB时的执行代码
  6. Application.OnKey "+{tab}", "lastcell"    '判断按键为SHIFT+TAB时的执行代码
  7. End Sub

简单编程实现按Tab键时在指定单元格间跳转.rar
修改应用例子:通过左右键控制跳转位置.rar
2楼
apolloh
VBA的主题可以将代码帖出来方便大家学习。
3楼
muguixin
楼主,请问一下,在打开《修改应用例子:通过左右键控制跳转位置》工作簿后,然后关闭该工作簿(不关闭excel程序),只要按左右键就会打开已经关闭的《修改应用例子:通过左右键控制跳转位置》工作簿。而且打开其他工作簿,左右键的效果一直都在
4楼
qinhuan66
好好学习天天向上
5楼
icenotcool

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap