Excel 滚动条用户表单在拖动时不会持续更新

Excel Scroll Bar User Form won't Continuously Update when Dragged

我正在设计一个电子表格,它将使用一个带有滚动条的用户表单。当我使用鼠标拖动栏时,我需要滚动条来实时更新指定的单元格,目前它只在我释放鼠标时调整单元格中的值。

我最初想使用滑块,但从研究来看,这些似乎不能在用户表单中使用。

有谁知道任何 VBA 代码或任何可以在我使用鼠标拖动滚动条时使滚动条不断更新的代码?

如果您在用户窗体上使用滚动条并且希望在拖动时进行更新,则需要将代码放在滚动条的 scroll 事件处理程序中。您描述的行为发生在滚动条的 change 事件处理程序中。要查看差异,请创建一个新的用户窗体,并将滚动条作为其上的唯一控件。在它的代码模块中输入以下两个事件处理程序。当您 运行 它时,您应该看到 B1 而不是 A1 顺利更新:

Private Sub ScrollBar1_Change()
    Range("A1").Value = ScrollBar1.Value
End Sub

Private Sub ScrollBar1_Scroll()
    Range("B1").Value = ScrollBar1.Value
End Sub