|
こんにちは
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
|
|