ユーザーフォーム コンボボックスで選択したシート表示 VBA

ExcelVBA

コンボボックスで選択したシートをアクティブにする方法をご紹介します。

ぜひお試しください!

動画で動作確認ができます👇

ユーザーフォーム作成

ユーザーフォームを作成します。


 

Excelシート

「Sheet1」にマクロボタンを設置します。


 

以下コードを標準モジュール「Module1」に入力して、
ボタンをクリックしたときに、ユーザーフォームが開くようにします。


Sub ボタン1_Click()
    UserForm1.Show vbModeless
End Sub

 

マクロコードを「Module1」に入力した画面


 

マクロコードを入力

マクロコードを「UserForm1」に入力します。


Private Sub UserForm_Initialize()
'ユーザーフォームを開いたときに実行される

Dim Ws As Worksheet

    'コンボボックスに全シート名を追加
    For Each Ws In Worksheets
       ComboBox1.AddItem Ws.Name
    Next

End Sub

Private Sub CommandButton1_Click()
'コマンドボタンをクリックしたときに実行される
    
    'コンボボックスで選択したシートに移動
    Sheets(ComboBox1.Value).Activate

End Sub

 

マクロコードを入力する場所「UserForm1」


 

動作

ユーザーフォームを開いて、コンボボックスからシート名を選択し、
「選択」ボタンをクリックします。


 

コンボボックスで選択したシートに移動します。


 

シートを増減した場合、ユーザーフォームを一度閉じて、
再度開くと、コンボボックスに反映されます。


 
 
この記事がお役に立ちますと幸いです🍀
 
・【ExcelVBA】ユーザーフォーム作成の事例まとめ
 

【VBAユーザーフォーム】何ができるの?:使用例34選
エクセルのユーザーフォームで、処理を自動化するVBAコードをご紹介します。ぜひお試しください😉

 

[最速入門] ChatGPTに任せる Excelマクロ&VBA 面倒なプログラミングは秒で片づけよう

ChatGPTと対話しながら身につける、新しいVBA入門

Excelマクロ・VBAをAIと一緒にラクに習得したいなら、まず読んでおきたい一冊です!


★★★★★ 4.6 ※ Amazonカスタマーレビューより
マクロ記録とChatGPTを組み合わせた学習法が実践的で、すぐ現場で使える
「過不足のない指示」の出し方を学べ、AIとの対話スキルが身につく
変数・条件分岐・ループなどVBAの基礎もしっかり解説されている