- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル フォーム上の全てのコントロールを取得した)
エクセルでフォーム上の全てのコントロールを取得する方法
このQ&Aのポイント
- エクセルのVBAを使って、フォーム上の全てのコントロールを取得する方法を解説します。
- エクセルのVBAでは、Formsオブジェクトを使用してフォーム上のコントロールにアクセスします。
- しかし、エクセルではFormsオブジェクトが存在しないため、コンパイルエラーが発生します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは 直接オブジェクトを指定できるなら Sub try_c() Dim i As Integer With UserForm1.Controls For i = 0 To .Count - 1 Debug.Print .Item(i).Name Next End With End Sub 文字列のオブジェクト名で参照するなら Sub try_j() Dim i As Integer Dim StrFormName As String StrFormName = "UserForm1" With UserForms.Add(StrFormName).Controls For i = 0 To .Count - 1 Debug.Print .Item(i).Name Next End With End Sub こんな感じでどうでしょう。 UserForm1 "UserForm1" どちらもオブジェクト名です。 キャプションとは違いますから、お間違いなきよう。
お礼
お返事遅くなってすいません。 どちらの方法も試してみて、うまく行きました! アクセスとではやり方が違うのですね。ありがとうございました。