web-dev-qa-db-ja.com

ExcelvbaのLINEST関数

データ値のセットの2次方程式(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.10919130371322:Variant/Double
  • :Mpolynomials(2):: Variant(1 to 2):Mpolynomials(2,1):2.49037160577299E-06:Variant/Double:Mpolynomials(2,2):0.050203149944234:Variant/Double
  • :Mpolynomials(3):: Variant(1 to 2):Mpolynomials(3,1):0.999776086266518:Variant/Double:Mpolynomials(3,2):9.34516966780855E-03:Variant/Double
  • :Mpolynomials(4):: Variant(1 to 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-04:Variant/Double
1
NK1

私はいくつかのブラウジングを行い、2次方程式の多項式を取得する方法を取得しました

Mpolynomials = Application.WorksheetFunction.LinEst(RangeM、Application.Power(RangeF、Array(1、2)))

ここで、Mpolynomialsはバリアントです

1
NK1