ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 2392|回复: 3

[讨论] 如何实现“光标始终在视图正中”地滚动?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2014-10-8 16:25 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
(不知道应该放VBA区还是这区,既然不清楚是否有VBA实现的可能,还是先放这里了)

效果就是,按方向键的话,例如按下键,如果是在表格视图中较高的行的话视图就不动,如果光标到达视图中部的行的话,就开始滚动视图,反正就是按下键之后光标向下移动一行,同时尽量维持光标仍在视图正中。

我知道 ScrollLock,可以只滚动视图不移动光标。
我希望的就是按方向键时,如果是靠左/上的单元格则只移动光标,否则就既滚动视图又移动光标。

谁都知道,望着屏幕正中的注意力最高,如果在滚动的时候视线不用移动而且不妨碍操作(录入/修改/通过聚光灯查看同行同列等)就最好了。

TA的精华主题

TA的得分主题

发表于 2014-10-8 19:20 来自手机 | 显示全部楼层
貌似要用VBA的

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-10-13 11:26 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
最终用VBA实现了,整个模块的代码是:
  1. Public v As Boolean
  2. Sub 居中视图()
  3.     If v = False Then
  4.     Application.OnKey "{UP}", "上"
  5.     Application.OnKey "{DOWN}", "下"
  6.     Application.OnKey "{LEFT}", "左"
  7.     Application.OnKey "{RIGHT}", "右"
  8.     v = True
  9.     Else
  10.     Application.OnKey "{UP}"
  11.     Application.OnKey "{DOWN}"
  12.     Application.OnKey "{LEFT}"
  13.     Application.OnKey "{RIGHT}"
  14.     v = False
  15.     End If
  16. End Sub

  17. Sub 上()
  18.     If ActiveCell.Row = 1 Then End
  19.     Selection.Offset(-1, 0).Select
  20.     ActiveWindow.SmallScroll up:=1
  21. End Sub
  22. Sub 下()
  23.     Selection.Offset(1, 0).Select
  24.     ActiveWindow.SmallScroll down:=1
  25. End Sub
  26. Sub 左()
  27.     If ActiveCell.Column = 1 Then End
  28.     Selection.Offset(0, -1).Select
  29.     ActiveWindow.SmallScroll ToLeft:=1
  30. End Sub
  31. Sub 右()
  32.     Selection.Offset(0, 1).Select
  33.     ActiveWindow.SmallScroll toRight:=1
  34. End Sub
复制代码
运行宏会切换滚动方式,但还是比较毛坯,还未完全实现顶楼的效果,不过已经不错了。

TA的精华主题

TA的得分主题

发表于 2019-3-6 14:58 | 显示全部楼层
我也在想这个问题哈哈哈没有人回复,就是输入的时候 光标在A10 ,切换下一个A10的时候希望视图还在10的位置,这样比较舒服,不然过会视图就会在表格底部了
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-16 19:27 , Processed in 0.039125 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表