查找Excel滚动条的宽度

查找Excel滚动条的宽度,excel,scrollbar,active-window,vba,Excel,Scrollbar,Active Window,Vba,Activewindow.UsableWidth提供包含垂直滚动条宽度的屏幕宽度。有没有办法计算滚动条的宽度?我通过一个形状是UsableWidth,另一个形状是我实际看到的形状来测量它,不同的是滚动条的宽度。我想知道是否有一种方法可以将其自动化,以便用户可以使用更高或更低的分辨率,从而使用更小或更大的滚动条 谢谢大家! 如果要查找垂直滚动条宽度的值,可以使用Windows API调用: Declare Function GetSystemMetrics32 Lib "user32" Alias

Activewindow.UsableWidth提供包含垂直滚动条宽度的屏幕宽度。有没有办法计算滚动条的宽度?我通过一个形状是UsableWidth,另一个形状是我实际看到的形状来测量它,不同的是滚动条的宽度。我想知道是否有一种方法可以将其自动化,以便用户可以使用更高或更低的分辨率,从而使用更小或更大的滚动条


谢谢大家!

如果要查找垂直滚动条宽度的值,可以使用Windows API调用:

Declare Function GetSystemMetrics32 Lib "user32" Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long

Public Const SM_CXVSCROLL = 2

______________________________________

Sub ShowVScrollWidth()

    Dim lVScrollWidth As Long

    lVScrollWidth = GetSystemMetrics32(SM_CXVSCROLL)

    Debug.Print lVScrollWidth

End Sub

(改编自上的信息。有关可用GetSystemMetrics参数的更多信息,请访问。)

这覆盖了99.95%的屏幕,我认为这是某个人可以获得的最接近的。非常感谢您的快速回复!