- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBAでユーザーフォーム)
エクセルVBAでユーザーフォーム上のオプションボタンの制御方法
このQ&Aのポイント
- エクセルVBAを使用してユーザーフォーム上にオプションボタンとコンボボックスを配置し、オプションボタンをクリックした場合のコンボボックスの制御方法について質問します。
- 質問者は既にコンボボックスの動きについてVBAコードを書いているが、もっと簡単な方法があるのではないかと思っています。
- 回答者にはエクセルVBAの知識が求められます。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
以下のような書き方もあります。 Dim i As Integer For i = 1 To 3 Me.Controls("ComboBox" & i).Enabled = True Me.Controls("ComboBox" & i).ListIndex = 0 For i = 4 To 6 Me.Controls("ComboBox" & i).Enabled = False Me.Controls("ComboBox" & i).ListIndex = 0 Next
その他の回答 (1)
- imogasi
- ベストアンサー率27% (4737/17070)
回答No.2
参考にしてください。質問者の場合に使えるかな。 Sub UserForm_Click() For Each cl In UserForm1.Controls cl.RowSource = "a1:A3" 'リストするデーター>シートのセルの場合 cl.ListIndex = 0 '当初は一番上 i = Val(Replace(cl.Name, "ComboBox", "")) 'コントロールの名前の部分は省く If i < 4 Then cl.Enabled = True Else cl.Enabled = False End If Next End Sub ーー ComboBoxのBは大文字。
質問者
お礼
ありがとうございます。
お礼
こんな素晴らしい方法があったのですね! 助かります。ありがとうございました。