LINEST-Funktion in Excel VBA

LINEST-Funktion in Excel VBA

Ich versuche, die Gleichung 2. Ordnung (Y = ax^2 + bx + c) für einen Satz von Datenwerten herauszufinden. Wenn ich die eingebaute Funktion in Excel verwende

=LINEST(C2533:C2537,B2533:B2537^{1,2}) 

Ich erhalte für die von mir gewählten Daten folgendes Ergebnis

3.08414E-09 -0.00041244 7.351136804

Aber wenn ich dasselbe im Excel-VBA-Code versuche, stimmen die Antworten nicht überein. Kann mir jemand sagen, was im Code geändert werden muss?

Set RangeM = ("C2533:C2537")  -->Y axis
Set RangeF = ("B2533:B2537") --> Xaxis
Mpolynomials = Application.WorksheetFunction.LinEst(RangeM, RangeF, True, True)
  • : Mpolynome(1) : : Variante(1 bis 2) : Mpolynome(1,1) : -2,88227749032385E-04 : Variante/Doppelt : Mpolynome(1,2) : 6,10919130371322 : Variante/Doppel
  • : Mpolynome(2) : : Variante(1 bis 2) : Mpolynome(2,1) : 2,49037160577299E-06 : Variante/Doppelt : Mpolynome(2,2) : 0,050203149944234 : Variante/Doppel
  • : Mpolynome(3) : : Variante(1 bis 2) : Mpolynome(3,1) : 0,999776086266518 : Variante/Double : Mpolynome(3,2) : 9,34516966780855E-03 : Variante/Double
  • : Mpolynome(4) : : Variante(1 bis 2) : Mpolynome(4,1) : 13395.0169654829 : Variante/Doppelt : Mpolynome(4,2) : 3 : Variante/Doppelt
  • : Mpolynome(5) : : Variante(1 bis 2) : Mpolynome(5,1) : 1,16981624866201 : Variante/Doppelt : Mpolynome(5,2) : 2,61996588360387E-04 : Variante/Doppel

Antwort1

Ich habe ein bisschen gestöbert und herausgefunden, wie man die Polynome für die Gleichung zweiter Ordnung erhält

Mpolynome = Anwendung.Arbeitsblattfunktion.Linearwert(BereichM, Anwendung.Leistung(BereichF, Array(1, 2)))

Hier ist Mpolynomials eine Variante

verwandte Informationen