【发布时间】:2012-08-10 14:01:15
【问题描述】:
在 Excel 中,我有一个按钮,可以将所选单元格标记在页面上相对于您最初所在的单元格向上移动 20 位。它工作正常,直到它到达顶部然后出现错误。
我知道这[最有可能]是因为它超出了范围,所以我尝试使用 if else 语句来解决它 - 我认为是因为我不是 100% 熟悉我可以使用的函数名称t 找到正确的措辞: 如果单元格超出范围,则等于 0,0 或类似的值。
这是我目前所拥有的;唯一起作用的是语句的 else 部分:
Sub moveUp20()
'
' Move Up 20 Macro
'
'
If ActiveCell.Offset(-20, 0) <= Range(0, 0) Then
ActiveCell.Select = Range(0, 0)
Else
ActiveCell.Offset(-20, 0).Select
End If
End Sub
这可能很简单,因为我不熟悉 excel 宏编程术语/语义,所以我希望能得到一些帮助!谢谢! :)
【问题讨论】:
-
你到底想做什么?我的意思是为什么要手动选择单元格?你想达到什么目的?
-
我有一个很长的 Excel 电子表格,所以我创建了这个按钮作为上下移动页面的一种比滚动更快的方式,因为 20 个位置将选定的单元格从一个部分移动到另一个部分。我可能应该清楚单元格的内容不会改变 - 它基本上是在移动选定的单元格“光标”
-
为什么不设置鼠标的滚动,让它相应地滚动行?你不需要 vba 代码:)
-
+1!不知道你可以做这个整洁的小功能!将不得不探索。
-
控制面板 |鼠标 |一次滚动行
标签: excel button excel-2007 vba