お世話になります。
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ランキング
-
[© ロケットニュース24]のペー...
-
PowerPointで、作成されたファ...
-
Googleのログインエラー
-
Illustrator 文字パレットの表...
-
Notesで新着メール通知がこない
-
edgeで192.168.x.xローカルア...
-
Javascriptのtextareaで、常に...
-
DVD FlickでDVDを作ったら両端...
-
Outlook 共有アカウントの色分...
-
Googleマップについて
-
マンガミーヤのスライドショー...
-
thunderbirdで新着メール到着を...
-
Becky! Ver2の使い方
-
chromeでGoogleカレンダーの表...
-
マイクロソフトのエッジ(ブラ...
-
Googleマップのサイドパネル
-
PDFをデフォルトで通常モードで...
-
Word(2007)のガイド線?の消し方
-
Chromeで任意の自動入力履歴の...
-
Apple Watch の文字盤がおかし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[© ロケットニュース24]のペー...
-
Outlook 共有アカウントの色分...
-
PCのFPS表示について
-
マイクロソフトのエッジ(ブラ...
-
PowerPointで、作成されたファ...
-
paypayアカウント名の表示について
-
インライン・フレームの表示・...
-
CSEのウィンドウ表示
-
Googleマップのサイドパネル
-
PDFファイルを開くとき拡大...
-
Illustrator 文字パレットの表...
-
Operaで、以前開いていたページ...
-
Googleのログインエラー
-
マンガミーヤのスライドショー...
-
VSコードが機能しなくなった
-
TopSolidについて
-
jw_winで画面の全体が表示され...
-
iTunesのビジュアライザが表示...
-
PCを買ったけどほとんどのサイ...
-
Notesで新着メール通知がこない
おすすめ情報