
我試著找出一組資料值的二階方程式 (Y = ax^2 + bx + c)。當我使用Excel中的內建函數時
=LINEST(C2533:C2537,B2533:B2537^{1,2})
對於我選擇的數據,我得到以下結果
3.08414E-09 -0.00041244 7.351136804
但是,當我在 Excel VBA 程式碼中嘗試相同的操作時,答案並不相互關聯,任何人都可以告訴我程式碼中應該進行哪些修改嗎?
Set RangeM = ("C2533:C2537") -->Y axis
Set RangeF = ("B2533:B2537") --> Xaxis
Mpolynomials = Application.WorksheetFunction.LinEst(RangeM, RangeF, True, True)
- : Mpolynomials(1) : : Variant(1 to 2) : Mpolynomials(1,1) : -2.88227749032385E-04 : Variant/Double : Mpolynomials(1,2) : 6.1091913037132Double : Variant/1912
- : Mpolynomials(2) : : Variant(1 到 2) : Mpolynomials(2,1) : 2.4903716057729E-06 : Variant/Double : Mpolynomials(2,2) : 0.050203149994: Var
- : Mpolynomials(3) : : Variant(1 to 2) : Mpolynomials(3,1) : 0.999776086266518 : Variant/Double : Mpolynomials(3,2) : 9.345169667808555966785169667808555966785:55
- : Mpolynomials(4) : : Variant(1 到 2) : Mpolynomials(4,1) : 13395.0169654829 : Variant/Double : Mpolynomials(4,2) : 3 : Variant/Double
- : Mpolynomials(5) : : Variant(1 to 2) : Mpolynomials(5,1) : 1.16981624866201 : Variant/Double : Mpolynomials(5,2) : 2.61996588360387E-Double-04: VarE-0883603878
答案1
我做了一些瀏覽並獲得了獲取二階方程多項式的方法
Mpolynomials = Application.WorksheetFunction.LinEst(RangeM, Application.Power(RangeF, Array(1, 2)))
這裡 Mpolynomials 是一個變體