Display a CommandBar centered on the screen

 2000-02-05    Commandbars    0    133

With the macro below, you can display a CommandBar centered on the screen, both horizontally and vertically. The macro also shows how you can get the screensize by using the function GetSystemMetrics32.

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

Sub CenterCommandBar()
Dim w As Long, h As Long
    w = GetSystemMetrics32(0) ' screenwidth in points
    h = GetSystemMetrics32(1) ' screenheight in points
    With CommandBars("MyCommandBarName")
        .Position = msoBarFloating
        .Left = w / 2 - .Width / 2
        .Top = h / 2 - .Height / 2
    End With
End Sub