Excel VBA質問箱 IV

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

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


6548 / 13646 ツリー ←次へ | 前へ→

【44611】フォームの背景色について はちみつ 06/11/24(金) 11:52 質問[未読]
【44614】Re:フォームの背景色について neptune 06/11/24(金) 12:06 回答[未読]
【44619】Re:フォームの背景色について maverick 06/11/24(金) 12:53 回答[未読]

【44611】フォームの背景色について
質問  はちみつ  - 06/11/24(金) 11:52 -

引用なし
パスワード
   ユーザフォームを3つ使って、フォーム1→フォーム2→フォーム3→フォーム1…というように10回繰り返し処理をさせています。この10回の繰り返しを1Setとします。メモリの関係上、フォームは毎回Unloadしています。

ユーザーフォームの背景色を1Set毎に変更したいのですが、
 UserForm1.BackColor = RGB(255, 255, 0)
を書いても、一時的にしか反映されません。
Setの最初に背景色を変更して、そのSetの最中はずっと同じ背景色を使用するにはどうしたら良いのでしょうか?

【44614】Re:フォームの背景色について
回答  neptune  - 06/11/24(金) 12:06 -

引用なし
パスワード
   ▼はちみつ さん:
こんにちは
>Setの最初に背景色を変更して、そのSetの最中はずっと同じ背景色を使用するにはどうしたら良いのでしょうか?
Unloadしたら出来ません。Showする度に設定してやる必要があります。

1つのUserFormにssTab、TabStrip等を貼り付けて、ウィザード形式にしてやったら
どうですか?

ここで書ける程単純ではないですが・・・
Excelのウィザードを真似してみましょう。

【44619】Re:フォームの背景色について
回答  maverick  - 06/11/24(金) 12:53 -

引用なし
パスワード
   Public cnt As Long

Sub test()
  UserForm1.BackColor = RGB(255, 255, ((cnt \ 10) * 50) Mod 255)
  UserForm1.Show
  cnt = cnt + 1
End Sub

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