Excel VBA计算-简单计算

Excel VBA计算-简单计算,excel,vba,userform,Excel,Vba,Userform,如果有人能帮助我使用VBA进行简单的计算,我将不胜感激。我目前的情况是,我想做一个简单的计算如下 area = inner_dia * height 当我输入内径50和高度50时,正确答案应该是2500;然而,我的答案是15300。请帮助我哪里出了问题,在哪里可以学到更多使用VBA进行复杂计算的知识(例如使用自然对数、pi等) 提前感谢在即时窗口中写下: inner_dia = 50 height = 50 area = inner_dia * height ?area 编辑: Comman

如果有人能帮助我使用VBA进行简单的计算,我将不胜感激。我目前的情况是,我想做一个简单的计算如下

area = inner_dia * height
当我输入内径50和高度50时,正确答案应该是2500;然而,我的答案是15300。请帮助我哪里出了问题,在哪里可以学到更多使用VBA进行复杂计算的知识(例如使用自然对数、pi等)


提前感谢

在即时窗口中写下:

inner_dia = 50
height = 50
area = inner_dia * height
?area
编辑: CommandButton1是命令按钮的名称 tb_高度和tb_内径是文本框

Option Explicit

Private Sub CommandButton1_Click()
    MsgBox tb_height.Value * tb_inner_dia.Value
End Sub

文本框返回字符串值。您需要将字符串转换为浮点数,进行计算,然后格式化答案

见下例:

Dim inner_dia as Double, height as Double
inner_dia = Val(TextBox1.Text)
height = Val(TextBox2.Text)

Dim result as Double
result = inner_dia * height

TextBox3.Text = Format(result, "0.000")

如果您提供您使用的完整代码,将非常有用。请显示您的类型定义(您的
Dim
语句)可能的相关问题:谢谢您的帮助。但是我忘了提到我正在创建一个userform,因此它需要用户在height文本框和inner_dia文本框中输入值。是否需要为文本框配置内容?
internal_dia=50
强制将类型设置为16位整数。更好的方法是
内径=50
高度=50
强制使用浮点数。大家好。看来我找到了一个非常奇怪的解决我自己问题的办法。我发现把我的文本框命名为“高度”是个问题。我正在解决这个问题,并将文本框名称从“height”改为“hei”,这样计算就可以了。有人能告诉我问题出在哪里吗?将我的文本框命名为高度有任何限制吗?