VBA: 如何Space Userform 列表中的项目均匀?
VBA: How to Space Items evenly in a Userform List?
首先,我有以下循环:
lstResults.AddItem Range("A" & row).value & vbTab & _
Range("B" & row).value & vbTab & _
Range("C" & row).value
我想将 vbTab
替换为一些其他函数,无论字符的宽度如何,这些函数都会给我 一致的 间距。我的结果需要类似于:
Title1 Title2 Title3
12 34 56
将列表属性 ColumnCount
设置为 3
并将 ColumnWidths
设置为 100,100,100
- 在代码中或在表单设计器中。这些值以点为单位,并且根据您的语言环境,它们可能由 ;
而不是 ,
分隔
不要遍历源范围,而是将其放入二维变量数组中:
Dim source As Variant
source = Range("A1:C10").Value ' assuming your loop boundaries here.. adjust accordingly
然后,配置列表框列:
lstResults.ColumnCount = 3
lstResults.ColumnWidths = "50,50,50" ' adjust as you see fit
lstResults.ColumnHeads = True
现在用数组填充列表:
lstResults.List = source
完成:)
首先,我有以下循环:
lstResults.AddItem Range("A" & row).value & vbTab & _
Range("B" & row).value & vbTab & _
Range("C" & row).value
我想将 vbTab
替换为一些其他函数,无论字符的宽度如何,这些函数都会给我 一致的 间距。我的结果需要类似于:
Title1 Title2 Title3
12 34 56
将列表属性 ColumnCount
设置为 3
并将 ColumnWidths
设置为 100,100,100
- 在代码中或在表单设计器中。这些值以点为单位,并且根据您的语言环境,它们可能由 ;
而不是 ,
不要遍历源范围,而是将其放入二维变量数组中:
Dim source As Variant
source = Range("A1:C10").Value ' assuming your loop boundaries here.. adjust accordingly
然后,配置列表框列:
lstResults.ColumnCount = 3
lstResults.ColumnWidths = "50,50,50" ' adjust as you see fit
lstResults.ColumnHeads = True
现在用数组填充列表:
lstResults.List = source
完成:)