| 
    
     |  | こんにちは 3連休なのでちょっと勉強しています。
 ユーザーフォーム上にLabelが20ほどとTextBoxが60ほど貼り付けてあります。
 今までは、コントロール配列がほとんど理解できていなかったので、
 テキストボックスのクリアもtextbox1=""、textbox2=""、・・・・
 ラベル1がクリックされたら、・・・・・と一つ一つクリックイベントでやってましたが、コントロール配列に挑戦しようとしていますが、うまくいきません。
 どなたか教えていただけないでしょうか?
 
 ラベルが、クリックされたら、そのcaptionをコピーしして、テキストボックスを
 クリックしてそこに貼り付けたいのです。
 わからないまま、コードを書いてみました。よろしくお願いします。
 また、コードはどこに書いたらよいのでしょうか?sub UserForm_Initialize()で
 よいのですか?
 
 Private Sub Labelコピー()
 Dim i As Integer
 Dim myLbl As MSForms.Label
 
 Set myLbl = Form時間割.Controls("Labe" & i)
 For each myLbl in Form時間割.Controls
 
 If myLblがクリックされたら Then
 
 Worksheets("祝日設定").Range("A300") = myLbl.Caption
 Worksheets("祝日設定").Range("A300").Copy
 myLbl.ForeColor = &HFF&    ↑
 ↑
 End If            ラベルのCaptionがコピーできないので
 Next
 End Sub
 
 Private Sub Labelの貼り付け()
 dim j as Integer
 Dim mytxt As MSForms.TextBox
 Dim mytxt2 As MSForms.TextBox
 
 Set mytxt = Form時間割.Controls("TextBox" & "A" & j)
 Set mytxt2 = Form時間割.Controls("TextBox" & "B" & j)
 
 For Each mytxt in Form時間割.Controls
 If mytxtがクリックされたら then
 mytxt.Value = ""
 mytxt.past
 End If
 Next
 
 For Each mytxt2 in Form時間割.Controls
 If mytxt2がクリックされたら then
 mytxt2.Value = ""
 mytxt2.past
 End If
 
 Next
 End sub
 
 
 |  |