2017-08-29 43 views
0

以下代码是excel userfrom并从文本框中获取数字数据并计算公式对应的combobox.but当combobox.text =“b”为某个文本框的值例如2时,结果为7.46426393229446 E-02,同时它必须是0.074662在公式结果中出错

dim a as single 

a= val(textbox1) 

If ComboBox1.Text = "A" Then 

    j = 0.05 * (a)^0.9 

ElseIf ComboBox1.Text = "B" Then 

    j = 0.04 * (a)^0.9 

ElseIf ComboBox1.Text = "C" Then 

    j = 0.064 * (a)^0.75 

ElseIf ComboBox1.Text = "D" Or ComboBox6.Text = "E" Then 

    j = 0.08 * (a)^0.75 

Else 

    j = 0.05 * (a)^0.75 

End If 

LABEL1 = j的

+0

Textbox1中究竟**是什么**? – Rory

+0

@rory数字值 –

+2

你如何显示j的值,默认情况下是以科学计数法(即7.4662e-02,即0.074662)显示。 – h2so4

回答

1

而不是

0.04 * (a)^0.9

使用

0.04 * CDec((a)^0.9)CDec(0.04 * (a)^0.9)

这应该解决您的问题。所以,你的代码将

Dim a As Single 
a = Val(textbox1) 
If ComboBox1.Text = "A" Then 
    j = 0.05 * CDec((a)^0.9) 
ElseIf ComboBox1.Text = "B" Then 
    j = 0.04 * CDec((a)^0.9) 
ElseIf ComboBox1.Text = "C" Then 
    j = 0.064 * ((a)^0.75) 
ElseIf ComboBox1.Text = "D" Or ComboBox6.Text = "E" Then 
    j = 0.08 * CDec((a)^0.75) 
Else 
    j = 0.05 * CDec((a)^0.75) 
End If 

CDec功能转换值小数。

+0

感谢您的指导 –

+0

@SasanFadakar - 不客气! – Mrig