如果还有其他错误
如果还有其他问题,我正在尝试做另外一个。 但是,如果没有,我一直在给我错误的Else。 我有一个如果有,但如何来VBA没有看到它?
a = Sheet1.ComboBox1.value If unit <> a Then If a = "mils" Then Set cx = Sheet9.range("E2", Sheet9.range("E2").End(xlDown)) For Each rng In cx rng.value = rng.value * y Else Set cx = Sheet9.range("E2", Sheet9.range("E2").End(xlDown)) For Each rng In cx rng.value = rng.value / y End If End If
你错过了Next
一个For
,这使得IF
和For
块交错。
a = Sheet1.ComboBox1.value If unit <> a Then If a = "mils" Then Set cx = Sheet9.range("E2", Sheet9.range("E2").End(xlDown)) For Each rng In cx rng.value = rng.value * y Next ' <------------------------------ Missing Else Set cx = Sheet9.range("E2", Sheet9.range("E2").End(xlDown)) For Each rng In cx rng.value = rng.value / y Next ' <------------------------------- Missing End If End If
您需要使用“Next rng”closures“For Each”块,即:
a = Sheet1.ComboBox1.Value If unit <> a Then If a = "mils" Then Set cx = Sheet9.Range("E2", Sheet9.Range("E2").End(xlDown)) For Each Rng In cx Rng.Value = Rng.Value * y Next Rng Else Set cx = Sheet9.Range("E2", Sheet9.Range("E2").End(xlDown)) For Each Rng In cx Rng.Value = Rng.Value / y Next Rng End If End If
这是您for each
语句的语法错误
以下是VBA中For Each
循环的语法:
For Each element In Group [statement 1] [statement 2] .... [statement n] [Exit For] [statement 11] [statement 22] Next //you are missing this line in your coding