【问题标题】:VBA Loop to fill numbers in a comboboxVBA循环在组合框中填充数字
【发布时间】:2017-07-18 00:33:55
【问题描述】:

不知道为什么这段看似简单的代码总是让我崩溃:

Dim i as Long

For i = 0.25 to 10 step 0.25
    me.combobox1.addItem (i)
Next i

看起来很简单,我希望我的组合框有一个如下所示的列表:

0.25 0.50 0.75 1.00 . . . 10.00

【问题讨论】:

  • Dim i as Doubleme.combobox1.addItem Format(i, "0.00")
  • Long 不能有小数。使用单人或双人。注意小数步进可能不准确!
  • 哦,有道理,呵呵。谢谢。你会建议我只是查看一个数组吗?
  • 哦,谢谢斯莱,我错过了你的回复。这对我有用
  • @curious 我认为 PatricK 是在暗示使用小数步进时可能会出现浮点错误。

标签: vba for-loop


【解决方案1】:

没有循环的短版:

ComboBox1.List = [text(row(1:40)/4,"0.00")]

【讨论】:

  • [transpose(text(row(1:40)/4,"0.00"))] 获取尾随零
  • 感谢 @YowE3K 不确定文本是否会导致问题
  • LOL - 我也是,但我决定尝试一下,当它奏效时我自己都感到惊讶!
【解决方案2】:

也许尝试从“Next i”中去掉 i,即只使用 Next 而不是 Next 1

【讨论】:

    猜你喜欢
    • 2021-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多