Excel VBA質問箱 IV

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

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


10959 / 76735 ←次へ | 前へ→

【71318】Re:ユーザーフォームのラベルキャプションの表示切替
質問  HoMa  - 12/2/21(火) 11:12 -

引用なし
パスワード
   ▼hint さん:
コメント有難うございます。

>Initializeで設定した値に戻したいのですが
>モジュール変数を使えばいいでしょう。
>
>Dim labelText(1 To 5) As String
>Private Sub UserForm_Initialize()
>  Dim i As Long
>  labelText(1) = "あああ"
>  labelText(3) = "いいい"
>  labelText(5) = "ううう"
>  For i = 1 To 5 Step 2
>    UserForm1.Controls("Label" & i).Caption = labelText(i)
>  Next i
>End Sub
>labelTextを使って元に戻せばいいでしょう。

Private Sub UserForm_Initialize()
  Dim labelText(1 To 5) As String
  Dim i As Long
  
  labelText(1) = "あああ"
  labelText(3) = "いいい"
  labelText(5) = "ううう"
  
  For i = 1 To 5 Step 2
   UserForm1.Controls("Label" & i).Caption = labelText(i)
  Next i
End Sub

------------------------------------------------------------------------------
Private Sub ListBox1_Change()


  Dim i As Variant
  Dim lab As Variant
  Dim labelText As String
  
  lab = Array("1", "3", "5")

  For Each i In lab

  With UserForm1.Controls("TextBox" & i)
     If .Value <> "" Then
         .Enabled = True
        UserForm1.Controls("Label" & i).Caption = labelText
      Else
        .Enabled = False
        UserForm1.Controls("Label" & i).Caption = Clear
      End If
    End With
  Next i
End Sub

としてみましたが、リストボックスの選択を変える(テキストボックス内の文字が変化する)とラベルの文字が消えてしまい、元に戻りませんでした。
書き方が間違っていますでしょうか?
ちなみに、
lab = Array("1", "3", "5")
としましたが、実際は("5", "6", "9")など、規則性が無いのですが、どうすればよいでしょうか?

>ところで、
>cap = UserForm1.Controls("label" & i).Caption
>・・・
> UserForm1.Controls("Label" & i).Caption = cap
>としているから、
>戻すにもなんにも、最初から少しも変わっていないわけですよね。
>意味がわからないです。なにかのミスですか?
>もう少し整理したほうがいいですよ。

これについては、

cap = UserForm1.Controls("label" & i).Caption
で一旦"cap"にラベルの文字を入れて

If .Value <> "" Then
の時は"cap"の文字を表示して

Elseの時はクリア

という風にできるかなと思ったんですが、間違っていますでしょうか。

ご教示どうぞよろしくお願いします。
4 hits

【71302】ユーザーフォームのラベルキャプションの表示切替 HoMa 12/2/20(月) 11:36 質問
【71303】Re:ユーザーフォームのラベルキャプション... ちん 12/2/20(月) 12:39 発言
【71309】Re:ユーザーフォームのラベルキャプション... HoMa 12/2/21(火) 9:06 質問
【71304】Re:ユーザーフォームのラベルキャプション... Hirofumi 12/2/20(月) 14:30 発言
【71310】Re:ユーザーフォームのラベルキャプション... HoMa 12/2/21(火) 9:13 質問
【71322】Re:ユーザーフォームのラベルキャプション... Hirofumi 12/2/21(火) 12:34 発言
【71324】Re:ユーザーフォームのラベルキャプション... HoMa 12/2/21(火) 13:27 お礼
【71305】Re:ユーザーフォームのラベルキャプション... UO3 12/2/20(月) 14:39 発言
【71311】Re:ユーザーフォームのラベルキャプション... HoMa 12/2/21(火) 9:16 質問
【71316】Re:ユーザーフォームのラベルキャプション... hint 12/2/21(火) 10:16 発言
【71318】Re:ユーザーフォームのラベルキャプション... HoMa 12/2/21(火) 11:12 質問
【71323】Re:ユーザーフォームのラベルキャプション... hint 12/2/21(火) 13:10 発言
【71325】Re:ユーザーフォームのラベルキャプション... HoMa 12/2/21(火) 13:34 お礼
【71326】Re:ユーザーフォームのラベルキャプション... hint 12/2/21(火) 13:50 発言
【71327】Re:ユーザーフォームのラベルキャプション... hint 12/2/21(火) 14:00 発言

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