
お世話になります。
ExcelのVBAを利用してマクロを作成しているのですが、ユーザフォームにリストボックスを設定し、任意の高さを調節したいと思っております。
ユーザフォームツールで、ユーザフォーム(UserForm1)を作成し、その中にリストボックス(ListBox1)を設定しました。
下記のコードはサンプルですが、なぜかリストボックスの高さが調整されないのです。。
コードが間違っているのでしょうか?
詳しい方、ご指導お願いします。。。
Private Sub UserForm_Initialize()
With UserForm1.ListBox1
.AddItem "テスト1"
.AddItem "テスト2"
.Height = 50
End With
'リストボックスの高さを表示する
Msgbox UserFrom1.ListBox1.Height
End Sub
※Msgboxでは"50"と表示されず、ユーザフォームツールで設定した高さが表示されてしまいます。。
No.1ベストアンサー
- 回答日時:
----------------------------
With UserForm1.ListBox1
.AddItem "テスト1"
.AddItem "テスト2"
.Height = 50
End With
----------------------------
.Height=50を下記のように最初に持ってくれば出来ると思います
With UserForm1.ListBox1
.Height = 50
.AddItem "テスト1"
.AddItem "テスト2"
End With
takachan7272さん、早速ありがとうございます!
ご教授いただいたとおり、うまくいきました!
ただ、なぜ Heightを最初に持って行く必要があるのかいまいち理解できませんが…。
もしご存じでしたらお教えいただけますか?
とりあえずこの件について回答があるか待ってみますが、しばらくなければ質問を締め切ります。
No.2
- 回答日時:
takachan7272です。
実は私も理由はわかりません。
コードを1行ずつ実行すると、調整されるんですけどね・・・
リスト(値)を設定せずに高さだけ調整させると、
これは問題なく処理されます。
リストを設定してからだとダメなんですよね。
例えば、質問に書かれたままのコードを Userform_Clockで実行すると
問題なく処理されます。
イベント発生や、そのタイミング等が絡んでいるのかもしれませんね。
何かモヤモヤ感が残ってしまいました。
私も正確な理由が知りたいです。
再度ありがとうございます!
なるほど…。
たしかにおっしゃるとおり、不可解な現象ですね。
リストボックスの高さの調整はうまくいかないのですが、ユーザフォーム自体の高さ調整であれば、なんの問題もなく動作するんですけどね…。
新たな回答が寄せられるのを待ってみましょう!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) ユーザーフォームの表示を追加したい 2 2023/03/26 23:18
- Visual Basic(VBA) リストボックス セルの値を取得する 1 2022/05/21 20:47
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) ユーザーフォームに2つのコンボボックス銀行名「ConboBox1」支店名を「ConboBox2」とし 4 2022/08/03 17:34
- Visual Basic(VBA) ListBox1をClickしたときのイベント 5 2022/12/11 19:45
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マイクロソフトのエッジ(ブラ...
-
Outlook 共有アカウントの色分...
-
マンガミーヤのスライドショー...
-
PCのFPS表示について
-
PowerPointで、作成されたファ...
-
【ExcelVBA】ユーザフォーム初...
-
Tera term pro を常に手前に表...
-
GoogleChrome「CustomBlocker」...
-
VSコードが機能しなくなった
-
autocadLTパラメトリックの使い...
-
秀丸の「行の強調表示」を増や...
-
chromeでタスクバーのウィンド...
-
PDFファイルを開くとき拡大...
-
Googleインスタント検索の設定...
-
設定で、SafariのJavaScriptを...
-
真っ白いページが表示されてしまう
-
yahoo地図の○レマークの駆除
-
ページが表示できません
-
Textboxにスクロールバーを表示
-
GoogleChromeの表示済みリンクの色
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マイクロソフトのエッジ(ブラ...
-
PCのFPS表示について
-
PowerPointで、作成されたファ...
-
Googleのログインエラー
-
Outlook 共有アカウントの色分...
-
GoogleChromeの表示済みリンクの色
-
マンガミーヤのスライドショー...
-
EdMaxでHTMLメールを受けたとき...
-
RakutenLinkの通話相手、電話帳...
-
thunderbirdで新着メール到着を...
-
PDFファイルを開くとき拡大...
-
CSEのウィンドウ表示
-
DVD FlickでDVDを作ったら両端...
-
chromeでGoogleカレンダーの表...
-
paypayアカウント名の表示について
-
Googleマップのサイドパネル
-
iTunesのビジュアライザが表示...
-
Googleマップについて
-
chromeでタスクバーのウィンド...
-
PCメモリのD.O.C.P設定について
おすすめ情報