Excel VBA質問箱 IV

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

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


7438 / 13644 ツリー ←次へ | 前へ→

【39181】ユーザーフォームにチェックボックスを入れたい いなば 06/6/19(月) 16:00 質問[未読]
【39183】Re:ユーザーフォームにチェックボックスを... Blue 06/6/19(月) 16:03 発言[未読]
【39184】Re:ユーザーフォームにチェックボックスを... いなば 06/6/19(月) 16:12 質問[未読]
【39185】Re:ユーザーフォームにチェックボックスを... Blue 06/6/19(月) 16:17 回答[未読]
【39186】Re:ユーザーフォームにチェックボックスを... いなば 06/6/19(月) 16:29 お礼[未読]

【39181】ユーザーフォームにチェックボックスを入...
質問  いなば  - 06/6/19(月) 16:00 -

引用なし
パスワード
   予定表を作成したいと考えています。

A列の3行目から下方向に日付
B列の3行目から右方向に名前

名前については増える可能性があります。

そこで、ユーザーフォームに日付を入れるテキストボックス(TextBox1)を配置し、名前についてはチェックボックスを利用したいと思っています。

UserForm_InitializeでB列の3行目から最右行までの名前をチェックボックスとしてユーザーフォームに配置したいと思います。
名前は増える可能性があるため、ユーザーフォームを開くたびにチェックボックスの数が変わる可能性があります。

チェックボックスをユーザーフォームのFrame1の中に入れるにはどのようなコードを書けばいいでしょうか?
教えてください。宜しくお願いします。

【39183】Re:ユーザーフォームにチェックボックス...
発言  Blue  - 06/6/19(月) 16:03 -

引用なし
パスワード
   動的にチェックボックスをつくるのではなく、
もともと最大数分つくっておいて、非表示にするのはどうでしょうか?

【39184】Re:ユーザーフォームにチェックボックス...
質問  いなば  - 06/6/19(月) 16:12 -

引用なし
パスワード
   ▼Blue さん:
>動的にチェックボックスをつくるのではなく、
>もともと最大数分つくっておいて、非表示にするのはどうでしょうか?

Blueさんありがとうございます。
チェックボックスを非表示にするというのはどのようにやればいいでしょうか?

また、現在テスト中なんですが、
仮の名前を10個ほど作って、チェックボックスを10個ほど配置してます。

ユーザーフォームに入力した結果をワークシートに転記する際に、どのチェックボックス(名前)がTrueなのかをループをしてチェックしています。
そのようなやり方でも、チェックボックスはあるけど非表示という場合でもできるでしょうか?

【39185】Re:ユーザーフォームにチェックボックス...
回答  Blue  - 06/6/19(月) 16:17 -

引用なし
パスワード
   VisibleプロパティをFalseにすると見えなくなります。
(デザインモードでは見えていますが、実際表示すると消える)
なので、プログラム中で表示/非表示を切り替えると良いと思います。

【39186】Re:ユーザーフォームにチェックボックス...
お礼  いなば  - 06/6/19(月) 16:29 -

引用なし
パスワード
   ▼Blue さん:
>VisibleプロパティをFalseにすると見えなくなります。
>(デザインモードでは見えていますが、実際表示すると消える)
>なので、プログラム中で表示/非表示を切り替えると良いと思います。

Blueさん ありがとうございます。
VisibleプロパティをFalseにすることでチェックボックスが見えなくなることは確認できました。

名前のチェックボックスすべてのVisibleプロパティをFalseにしておいて、
Private Sub UserForm_Initialize()
For i = 2 To Cells(2, "IV").End(xlToLeft).Column
  Me.Controls("CheckBox" & i - 1).Caption = Cells(2, i).Value
  Me.Controls("CheckBox" & i - 1).Visible = True
Next
End Sub
とやってできました。ありがとうございました。

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