主要观点总结
文章介绍了如何设置Excel中的用户窗体,包括使其始终显示在应用程序窗口的中心,以及在需要时自动添加滚动条。文章还提供了相关代码示例。
关键观点总结
关键观点1: 用户窗体始终显示在应用程序窗口的中心
通过使用特定的VBA代码,可以确保用户窗体在打开时始终自动显示在应用程序窗口的中心。
关键观点2: 自动添加滚动条
文章介绍了如何根据用户窗体的尺寸自动添加水平和/或垂直滚动条,以及在窗体尺寸大于应用程序窗口尺寸时如何处理滚动条。
关键观点3: 代码示例
文章提供了相关的VBA代码示例,包括在用户窗体代码模块中添加的代码,以及在动态打开或激活用户窗体时如何调整窗体大小和滚动条的设置。
关键观点4: 资源与交流
文章鼓励读者在下面留言完善内容,并介绍了知识星球的完美Excel社群,鼓励读者加入进行技术交流和提问,获取更多电子资料。
正文
当用户打开用户窗体时,你是否想让它们总是位于应用程序窗口的中心,是否想要在用户窗体尺寸大于应用程序窗口尺寸时,用户窗体会自动获得滚动条。默认情况下,你可以为用户窗体启用滚动条,但如果尺寸足够大,看起来会不美观,因为用户窗体上的滚动条将变灰。
下面的代码确保用户窗体始终自动显示在应用程序窗口的中心,并在需要时自动添加水平和
/
或垂直滚动条。
Public Sub CenterFormAndSetScrollBars(frm As Object)
With frm
.StartUpPosition = 0
.ScrollBars = fmScrollBarsNone
If .Width < Application.Width Then
.Left = Application.Left + 0.5 *
Application.Width - 0.5 * .Width
Else
.ScrollBars = fmScrollBarsHorizontal
If .ScrollWidth = 0 Then
.ScrollWidth = .Width
.ScrollLeft = 0
End If
.Left = Application.Left
.Width = Application.Width
End If
If .Height < Application.Height Then
.Top = Application.Top + 0.5 * Application.Height - 0.5 * .Height
Else
If .ScrollBars = fmScrollBarsHorizontal Then
.ScrollBars = fmScrollBarsBoth
Else
.ScrollBars = fmScrollBarsVertical
End If
.ScrollHeight = .Height
.ScrollTop = 0
.Top = Application.Top
.Height = Application.Height
End If
End With
End Sub
Private Sub UserForm_Initialize()
CenterFormAndSetScrollBars Me
End Sub
如果在动态打开或激活用户窗体时调整了用户窗体的大小,则必须在此尺寸调整后再调用
CenterFormAndSetSrollBars
过程:
Private Sub UserForm_Initialize()
Me.Width = 100
CenterFormAndSetScrollBars Me
End Sub
注:上述代码整理自
worksheetsvba.com
,供参考。
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。
欢迎到知识星球:
完美
Excel
社群
,进行技术交流和提问,获取更
多电子资料,并通过社群加入专门的微信讨论群,更方便交流。