2015-08-28 46 views
0

我一直在寻找几个小时,我希望有人能帮助我。无法更改动态添加列表框的尺寸

我在vba中创建一个表单,我想动态添加Listboxes。列表框被添加,所以按计划进行。但是,我似乎无法改变列表框的宽度和高度。所有其他事情正在改变。这是我的代码:

Dim lb As MSForms.ListBox 
Set lb = Me.controls.add("Forms.Listbox.1") 
With lb 
    .ColumnCount = 4 
    .Left = 180 
    .Top = 16 
    .MultiSelect = 1 
    .Height = 270 
    .Width = 665 
End with 

我注意到的另一件事是Heigth和Width不在ListBox的属性列表中。难道是我使用错误的ListBox类型?

编辑:它变得陌生。当我逐行浏览代码时,它正常工作,ListBox的大小与我想要的一样。

+0

代码看起来不错。我创建了一个表单,它从几个组合框中获取高度和宽度,并将这些维度发送到编辑后的代码副本。更新后,您是否尝试添加Me.Repaint? – MiguelH

+0

Me.Repaint没有工作,但是通过逐行代码似乎工作。 –

+0

ListBox创建后是否还有其他事情发生? – MiguelH

回答

0

尝试,这可能是

Me.Controls( “Forms.Listbox.1”)。IntegralHeight =假 或 lb.IntegralHeight =假