Excel VBA Problem? Fehler beim Kompilieren. Erwartet Anweisungsende?
Hii,
ich möchte mithilfe eines VBA Codes eine Formel in eine Zelle schreiben, bekomme aber mal den Fehler: erwartet Anweisungsende und mal einen Syntaxfehler.
ActiveCell.Formula2R1C1 = _
"=IF"(Iferror(if(search(""Jermann"",xlookup(RC[-3],R2C3:R[-3]C[-2],R2C20:R[-3]C[15],"" ""))>0.2,2,1)*Iferror(if(search(""RISTAG""xlookup(RC[-3],R2C3:R[-3]C[-2],R2C20:R[-3]C[15],"" ""))>0.2,3,1)*Iferror(if(search(""OSTAG Ing.""xlookup(RC[-3],R2C3:R[-3]C[-2],R2C20:R[-3]C[15],"" ""))>0.2,4,1)=2,""Jermann"",IF"(Iferror(if(search(""Jermann"",xlookup(RC[-3],R2C3:R[-3]C[-2],R2C20:R[-3]C[15],"" ""))>0.2,2,1)*Iferror(if(search(""RISTAG""xlookup(RC[-3],R2C3:R[-3]C[-2],R2C20:R[-3]C[15],"" ""))>0.2,3,1)*Iferror(if(search(""OSTAG Ing.""xlookup(RC[-3],R2C3:R[-3]C[-2],R2C20:R[-3]C[15],"" ""))>0.2,4,1)=3,""RISTAG"",IF"(Iferror(if(search(""Jermann"",xlookup(RC[-3],R2C3:R[-3]C[-2],R2C20:R[-3]C[15],"" ""))>0.2,2,1)*Iferror(if(search(""RISTAG""xlookup(RC[-3],R2C3:R[-3]C[-2],R2C20:R[-3]C[15],"" ""))>0.2,3,1)*Iferror(if(search(""OSTAG Ing.""xlookup(RC[-3],R2C3:R[-3]C[-2],R2C20:R[-3]C[15],"" ""))>0.2,4,1)=4,""OSTAG Ing."",0)0)0)0))
Ich weiss das es viel ist, aber ihr würdet mir eine grosse Hilfe sein, wenn ihr den fehler findet.
1 Antwort
Formattiere deine Code ordnetlich, dann siehst du, dass da etwas nichts timmen kann.
Es fehlen Klammern und vermutlich auch Kommata. Kommentare wären im Übrigen auch sinnvoll. Oder eine sinnvolel Aufsplittung in mehrere Teile.:
ActiveCell.Formula2R1C1 = _
"=IF"(
Iferror(
if(
search(
""Jermann"",
xlookup(
RC[-3],
R2C3:R[-3]C[-2],
R2C20:R[-3]C[15],
"" ""
)
)
> 0.2, 2, 1
)
*Iferror(
if(
search(
""RISTAG""xlookup(
RC[-3],
R2C3:R[-3]C[-2],
R2C20:R[-3]C[15],
"" ""
)
)
> 0.2, 3, 1
)
*Iferror(
if(
search(
""OSTAG Ing.""xlookup(
RC[-3],
R2C3:R[-3]C[-2],
R2C20:R[-3]C[15],
"" ""
)
)
> 0.2, 4, 1
)
=2,
""Jermann"",
IF"(
Iferror(
if(
search(
""Jermann"",
xlookup(
RC[-3],
R2C3:R[-3]C[-2],
R2C20:R[-3]C[15],
"" ""
)
)
> 0.2, 2, 1
)
*Iferror(
if(
search(
""RISTAG""xlookup(
RC[-3],
R2C3:R[-3]C[-2],
R2C20:R[-3]C[15],
"" ""
)
)
> 0.2, 3, 1
)
*Iferror(
if(
search(
""OSTAG Ing.""xlookup(
RC[-3],
R2C3:R[-3]C[-2],
R2C20:R[-3]C[15],
"" ""
)
)
> 0.2, 4, 1
)
=3,
""RISTAG"",
IF"(
Iferror(
if(
search(
""Jermann"",
xlookup(
RC[-3],
R2C3:R[-3]C[-2],
R2C20:R[-3]C[15],
"" ""
)
)
> 0.2, 2, 1
)
*Iferror(
if(
search(
""RISTAG""xlookup(
RC[-3],
R2C3:R[-3]C[-2],
R2C20:R[-3]C[15],
"" ""
)
)
> 0.2, 3, 1
)
*Iferror(
if(
search(
""OSTAG Ing.""xlookup(
RC[-3],
R2C3:R[-3]C[-2],
R2C20:R[-3]C[15],
"" ""
)
)
> 0.2, 4, 1
)
=4,
""OSTAG Ing."",
0
)
0)
0)
0)
)
Es gibt im Übrigen auch Tools für soetwas. oftmals auch shcon eingebaut in der IDE. Nennt sich "Code Formater".