我想将0 - 100中的所有数字添加到vba中的列表框中,但是每个条目都需要是3位数字和整数。因此,例如,在列表框中的前三项是000,001,002如何将000作为整数添加到listbox vba中?
当我尝试并使用它们添加到列表框中:
listbox1.AddItem (000)
它被更正为:
listbox1.AddItem (0)
对此有一个解决方法吗?
我想将0 - 100中的所有数字添加到vba中的列表框中,但是每个条目都需要是3位数字和整数。因此,例如,在列表框中的前三项是000,001,002如何将000作为整数添加到listbox vba中?
当我尝试并使用它们添加到列表框中:
listbox1.AddItem (000)
它被更正为:
listbox1.AddItem (0)
对此有一个解决方法吗?
为什么要将该值作为integer
而不是string
?
Listbox1.addItem "000"
或一个简单的循环会做使用Format() function
Dim i As Long
For i = 1 To 100
ListBox1.AddItem Format(i, "000")
Next i
要提取值作为整数使用
dim value as long
value = ListBox1.List(1)
因为我需要能够在电子表格的其他地方增加数字。 –
从列表框中读取时,将其转换为整数或长整数。 –
@BarneyG这是您要求的解决方法。您正试图添加一个字符串并假装它是一个整数。如果重要的是格式化,请使用字符串并将其转换为整数进行计算。 –
为什么作为整数而不是作为一个字符串? –
因为我需要能够在电子表格的其他地方增加数字。 –
那么整数值会截断前导零。您可以使用格式(integerVal,“000”)(如某人建议但删除)添加。然后,如果您需要使用它,请在计算中使用CINT(ListBox1.List(x))。 –