Dim a(9) As Double
Dim b(9) As Byte
Dim i As Integer
Dim num As Double
a(0) = 100
a(1) = 50
a(2) = 10
a(3) = 5
a(4) = 1
a(5) = 0.5
a(6) = 0.1
a(7) = 0.05
a(8) = 0.01i = 0
num = Text.TextDo While i <= UBound(a)
  Do While num >= a(i)
    num = num - a(i)
    b(i) = b(i) + 1
  Loop
  Txt(i).Text = b(i)
  i = i + 1
Loop为何运行会提示溢出   b(i) = b(i) + 1

解决方案 »

  1.   

    num = Text.Text  NUM取值不行,byte只能取0-255之间
      

  2.   

    Dim a(9) As Double
    Dim b(9) As Byte
    -------------------------
    改为
    Dim a(8) As Double
    Dim b(8) As Byte
      

  3.   

    Dim b(8) As Byte 
    b的数据范围改大一点:Dim b(8) As Double---------------------------
    Dim a(8) As Double
    Dim b(8) As DouBle
    Dim i As Integer
    Dim num As Double
    a(0) = 100
    a(1) = 50
    a(2) = 10
    a(3) = 5
    a(4) = 1
    a(5) = 0.5
    a(6) = 0.1
    a(7) = 0.05
    a(8) = 0.01i = 0
    num = Text.TextDo While i <= UBound(a)
      Do While num >= a(i)
        num = num - a(i)
        b(i) = b(i) + 1
      Loop
      Txt(i).Text = b(i)
      i = i + 1
    Loop