Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


36507 / 76732 ←次へ | 前へ→

【45406】Re:ユーザーフォームを変数名で
発言  Jaka  - 06/12/22(金) 9:52 -

引用なし
パスワード
   標準モジュール

Public AddUFM(1 To 3) As Variant

Sub fftest()
For i = 1 To 3
  Set AddUFM(i) = VBA.UserForms.Add("UserForm" & i)
  AddUFM(i).Show 0
Next
End Sub


各フォームモジュール
(エラーについては、手向きでエラートラップで逃げました。)

Private Sub CommandButton1_Click()
On Error Resume Next
Unload AddUFM(1)
End Sub

Private Sub CommandButton1_Click()
On Error Resume Next
Unload AddUFM(2)
End Sub

Private Sub CommandButton1_Click()
On Error Resume Next
Unload AddUFM(3)
End Sub


予断ですが、
Unload UserForm1
とかできないので注意。
Unload Me はできますが。
なんか、実際のUserForm1とは違うみたいな感じ、詳しくは説明できないけど....。
でもこんな感じにすると、各フォームにあるコントロールが取れます。
キャプションの無いものは、エラーになります。
それについてのエラー対応は入れてません。
(On Error Resume Nextで逃げたら良いと思います。)
他サイトで回答した物そのまんまだけど・・・。

Sub kame()
  Dim VBC As Object
  Range("A1").Value = "コントロール名"
  Range("B1").Value = "コントロール種類"
  Range("C1").Value = "キャプション "
  With ThisWorkbook.VBProject
    For Each VBC In .VBComponents
      If VBC.Type = 3 Then
        G = G + 2
        Cells(G, 1).Value = VBC.Name
        Set AdUF = VBA.UserForms.Add(VBC.Name)
        For Each FCN In AdUF.Controls
          G = G + 1
          Cells(G, 1).Value = FCN.Name
          Cells(G, 2).Value = TypeName(FCN)
          On Error Resume Next
          Cells(G, 3).Value = FCN.Caption
          On Error GoTo 0
        Next
      End If
    Next
  End With
  Set AddUF = Nothing
End Sub
0 hits

【45375】ユーザーフォームを変数名で ぴかる 06/12/21(木) 8:48 質問
【45376】Re:ユーザーフォームを変数名で ichinose 06/12/21(木) 8:58 発言
【45377】Re:ユーザーフォームを変数名で Blue 06/12/21(木) 9:04 質問
【45379】Re:ユーザーフォームを変数名で ichinose 06/12/21(木) 9:13 発言
【45381】こちらでしたぁ ぴかる 06/12/21(木) 9:25 お礼
【45383】Re:ユーザーフォームを変数名で Blue 06/12/21(木) 9:47 発言
【45380】Re:ユーザーフォームを変数名で Jaka 06/12/21(木) 9:21 発言
【45382】Re:ユーザーフォームを変数名で ぴかる 06/12/21(木) 9:31 お礼
【45400】Re:ユーザーフォームを変数名で メカ大好き! 06/12/22(金) 8:36 発言
【45401】Re:ユーザーフォームを変数名で Blue 06/12/22(金) 8:50 回答
【45402】Re:ユーザーフォームを変数名で Blue 06/12/22(金) 9:00 発言
【45406】Re:ユーザーフォームを変数名で Jaka 06/12/22(金) 9:52 発言
【45407】Re:ユーザーフォームを変数名で Jaka 06/12/22(金) 10:21 発言
【45411】Re:ユーザーフォームを変数名で メカ大好き! 06/12/22(金) 13:21 お礼

36507 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free