如果按下按钮,则重复该宏

时间:2018-04-06 13:22:14

标签: excel-vba winapi vba excel

是否可以使用Excel-VBA和/或Windows API,只需按住该按钮重复按钮的宏?

在我个人的情况下,我想模拟屏幕角落中发现的那些黑色小箭头,我们用它来浏览Excel工作表。 使用宏录制器,我找到了代码来执行此操作,但每次需要宏工作时我都必须按下按钮。我想按住按钮,看到工作表移动,直到我按下按钮,就像那些箭头一样。

我正在使用的代码如下,对于四个箭头:

ActiveWindow.SmallScroll ToRight:=1
ActiveWindow.SmallScroll ToRight:=-1
ActiveWindow.SmallScroll Down:=1
ActiveWindow.SmallScroll Down:=-1

1 个答案:

答案 0 :(得分:2)

是 - 使用ActiveX SpinButton或Scrollbar而不是按钮。 (这个也让你能够点击另一个按钮去另一个方向)

Option Explicit
Dim lSpinButton As Long 'So we know of you are spinning up or down

Private Sub SpinButton1_Change()
    If SpinButton1.Value < lSpinButton Then
        ActiveWindow.SmallScroll Down:=1
        ActiveWindow.SmallScroll ToRight:=1
    Else
        ActiveWindow.SmallScroll Up:=1
        ActiveWindow.SmallScroll ToLeft:=1
    End If
    lSpinButton = SpinButton1.Value
End Sub