Dim a As Double
Dim b As Double
Dim c As Double
Dim d As Double
Dim e As Double
a = 7231.41
b = 1027.38
c = 4.1
d = -8244.1
e = -18.79
Dim h As Double
h = a + b + c + d
Debug.Print h

解决方案 »

  1.   

    Private Sub Command1_Click()
    Dim a As Currency
    Dim b As Currency
    Dim c As Currency
    Dim d As Currency
    Dim e As Currency
    a = 7231.41
    b = 1027.38
    c = 4.1
    d = -8244.1
    e = -18.79
    Dim h As Currency
    h = a + b + c + d
    Debug.Print hEnd Sub
      

  2.   

    谁能告诉我原因,好象h的值并没有超出double数据类型的范围
      

  3.   

    你说的是18.79后面的那些位数吗,那不是程序的问题,是VB或操作系统或CPU对double型数据的处理
      

  4.   

    那岂非以后所有的数值型都设置成currency
      

  5.   

    Private Sub Command6_Click()
    Dim a@
    Dim b@
    Dim c@
    Dim d@
    Dim e@
    a = 7231.41
    b = 1027.38
    c = 4.1
    d = -8244.1
    e = -18.79
    Dim h@
    h = a + b + c + d
    Debug.Print hEnd Sub