Vba &引用;编译错误:没有if的else;

Vba &引用;编译错误:没有if的else;,vba,excel,math,Vba,Excel,Math,我有一个错误的VBA宏,这毫无意义(我以前遇到过问题,并且清楚地看到了IF语句)。错误消息: 编译错误:没有If的Else 代码(开发中间值定理的演示): 选项显式 次级职能1() 作为字符串的弱多项式 暗号 作为整数的Dim计数器 模糊度 模糊系数 而单元格(计数器+1,1).Value“”和单元格(计数器+1,2).Value“”+1,因为第一行被A列、B列标题占据。如果单元格为空,则停止。 MsgBox“按项输入多项式。” 度=单元格(计数器+1,1)。值'A2 系数=单元格(计数器+1,

我有一个错误的VBA宏,这毫无意义(我以前遇到过问题,并且清楚地看到了IF语句)。错误消息:

编译错误:没有If的Else

代码(开发中间值定理的演示):

选项显式
次级职能1()
作为字符串的弱多项式
暗号
作为整数的Dim计数器
模糊度
模糊系数
而单元格(计数器+1,1).Value“”和单元格(计数器+1,2).Value“”+1,因为第一行被A列、B列标题占据。如果单元格为空,则停止。
MsgBox“按项输入多项式。”
度=单元格(计数器+1,1)。值'A2
系数=单元格(计数器+1,2)。值'B2
如果(系数<0),则如果系数为负,则符号为“-”
否则:如果系数>0,则如果系数为正,则符号为“+”
如果结束
多项式=多项式&“系数&“x^”和度”串联字符串,列出多项式。
计数器=1
计数器=计数器+1
温德
“最后:
MsgBox poly
端接头

之后您需要有一个新行。否则,if语句将在行尾自动关闭。VBA抱怨当它看到Else时没有打开的if块

更改为:

If (Coefficient < 0) Then 
    Sign = " - " ' if coefficient negative
Else
    If Coefficient > 0 Then Sign = " + " ' if coefficient positive
End If
如果(系数<0),则
符号=“-”,如果系数为负
其他的
如果系数>0,则如果系数为正,则符号为“+”
如果结束

Wow nevermind。我想你需要
elseif
否则:if与elseif有很大不同,这可能就是你想要的。。。
If (Coefficient < 0) Then 
    Sign = " - " ' if coefficient negative
Else
    If Coefficient > 0 Then Sign = " + " ' if coefficient positive
End If