我的VB程序中
有一式子
M=a*b
三个数均是Varient 类型
a=0.111247
b=0.455454554
结果
M却是0
而当a,b中一个为0时
M却不为0
怎么回事啊
还有如:
a=-b
当b=2时
a=2而不是a=-2

解决方案 »

  1.   

    不会的,把你的代码贴出来看看。我测试的情况:
    Private Sub Form_Click()
    Dim a As Variant, b As Variant, m As Varianta = 0.111247
    b = 0.455454554
    m = a * bDebug.Print m
    End Sub 0.050667952768838
      

  2.   

    Dim a As Variant, b As Variant, m As Integera = 0.111247
    b = 0.455454554
    m = a * b
    当 m这整形的时候,m=0,这是可能的
      

  3.   

    LZ说的情况关健是M是什么数据类型?好象问题的二问,数据类型都不一致
      

  4.   

    代码太长,不方便贴出来啊
    我也OF123
    那样试过是正确的
    但是我说的现象也是不假,我也纳闷,所以贴出来
    看有没有人碰到过一样的问题!我的变量类型全是Varient的
      

  5.   

    你只需要把参与运算的几个变量的定义语句, 运算语句贴出来,
    运算前后可以debug.print 他们的值, 就清楚了