• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBA コンボボックスの値による条件分岐)

VBAコンボボックスの値による条件分岐

このQ&Aのポイント
  • VBAを使用して、コンボボックスの値によって条件分岐する方法が知りたいです。
  • コンボボックスで指定した月のブックを開くマクロの記述方法を教えてください。
  • コンボボックスには1月から12月までのリストがありますが、上記の方法でエラーが発生しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

前半は 12個もなれば Thisworkbookに Private Sub Workbook_Open() With Worksheets("Sheet1").ComboBox1 For i = 1 To 12 m = StrConv(i, vbWide) .AddItem (m & "月") Next i End With End Sub などどうですか。 ーー 後半は Sheet1のクリックイベントに (2007以後ならxlsmに変えてください。バージョンを質問に書いておいたほうが良い) Private Sub ComboBox1_Click() b = ComboBox1.Value MsgBox b Workbooks.Open Filename:="C:\Documents and Settings\XXXX\My Documents\" & b & ".xls" End Sub コマンドボタンを儲け、そのクリックイベントにしなくても出来る。 === With Worksheets("Seet1").ComboBox1 はSheet1のミスタイプ?注意。 === イベントというのは、思考ではIF(もしも・・なら)の要素が入るが、それが必要ないようにしてくれるのが、この仕組み。ここがよくわかってないようだ。

tokyo2199
質問者

お礼

ありがとうございました。 無事できました。 詳しく解説していただいた上、 このように参考になるサンプルをいただき、 大変勉強になりました。

その他の回答 (1)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

private sub CommandButton1_Click() if me.combobox1 = "" then exit sub workbooks.open filename:="C:\testBook\" & me.combobox1 & ".xlsm" end sub のように。

関連するQ&A

専門家に質問してみよう