einfaches Problem. Ich habe eine Zeichenfolge, die eine Formel darstellt.Excel VBA - Berechnen in VBA
Wie
Dim formula As String
formula = Replace(processFormula(2016, 9000, constants, formulaRow), "##", 9000)
'formula has the value "(1007,27*((9000 - 8820)/10000)+1400)*((9000 - 8820)/10000)"
MsgBox (formula)
'Evaluate(formula) not working sadly
Jetzt möchte ich es in VBA bewerten und das Ergebnis zurück. Ich bekomme nicht, dass Evaluate für die Berechnung arbeitet.
processFormula ist eine Funktion, die eine Formel generiert und einen String zurückgibt. Also wird ein String in die Ersetzungsfunktion eingefügt, die '##' durch eine Zahl ersetzt. Nichts magisches hier. In Bezug auf die Debugger-Formel ist ein String mit dem oben angegebenen Wert (es wird direkt vom Debugger kopiert).
Gibt es einen einfachen und einfachen Weg?
Danke, ich hoffe, es ist kein Duplikat.
Was ist 'processFormula'? Ist es irgendeine Funktion? Welche Ausgabe kommt von 'processFormula'? – harun24hr
Es ist eine Zeichenfolge, die zurückgegeben wird. Also habe ich eine Zeichenfolge in Replace eingefügt. – sascha10000
sollten Sie das Komma durch einen Punkt in 1007,27 ersetzen – h2so4