フォームとコントロールの活用−フレームを使って擬似ツールバーを作る

エクセルのフォームではメニューやツールバーを作成することができません。
そこで、フレームをコンテナとし、この中にコマンドボタン等のコントロールを
配置することで擬似的にツールバーを作成します。

(前提):フレーム(Frame1)、フレーム内にコマンドボタン×5(CommandButton1 - 5)
     ボタンFace用のPicture - ".ico, .bmp"など(MyIcon1.ico−MyIcon5.ico)を
      ブックと同じフォルダーに配置

※フレーム位置、コマンドボタンの位置はユーザフォーム初期化イベントにて調整します。
※テスト用のアイコンファイルはWindowsメニューの”検索 − ファイルやフォルダ”
 から"*.ico"として検索するといくつかパソコン内から検索できるでしょう。コピーして
 リネームの上、ブックと同じフォルダーに入れておいてからサンプルを実行してください。

Private Sub UserForm_Initialize()

    Dim FT As Integer, FL As Integer, TH As Integer, TW As Integer
    Dim i As Integer
    FT = 15: FL = 15 'FrameのTop,Left設定用
    TH = 30: TW = 30 'トグルボタンの高さ、幅

    With Me.Frame1
        .Caption = ""
        .SpecialEffect = fmSpecialEffectSunken
        .Top = FT
        .Left = FL
        .Height = TH + 3 'フレームの高さ調整
        .Width = TW * 5 + 3 'フレームの幅調整
    End With

    For i = 1 To 5
        With Me.Frame1.Controls("CommandButton" & i)
            .Caption = ""
            .Top = 0
            .Left = TW * (i - 1) '左位置調整
            .Height = TH
            .Width = TW
            .Picture = LoadPicture(ThisWorkbook.Path & "\MyIcon" & i & ".ico")
        End With
    Next i

End Sub

Excel97,2000



戻る


Excel Word Access VBA! モーグ