Функция ЛИНЕЙН в Excel VBA

5419
NK1

Я пытаюсь выяснить уравнение 2-го порядка (Y = ax ^ 2 + bx + c) для набора значений данных. Когда я использую встроенную функцию в Excel

=LINEST(C2533:C2537,B2533:B2537^) 

Я получаю следующий результат для выбранных мной данных

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):: Вариант (1 до 2): Mpolynomials (1,1): -2.88227749032385E-04: Variant / Double: Mpolynomials (1,2): 6.10919130371322: Вариант / Double
  • : Mpolynomials (2):: Вариант (1 до 2): Mpolynomials (2,1): 2.49037160577299E-06: Вариант / Двойной: Mpolynomials (2,2): 0.050203149944234: Вариант / Double
  • : Mpolynomials (3):: Вариант (1 до 2): Mpolynomials (3,1): 0.999776086266518: Вариант / Двойной: Mpolynomials (3,2): 9.34516966780855E-03: Вариант / Double
  • : Mpolynomials (4):: Вариант (1 до 2): Mpolynomials (4,1): 13395.0169654829: Variant / Double: Mpolynomials (4,2): 3: Вариант / Double
  • : Mpolynomials (5):: Вариант (1 до 2): Mpolynomials (5,1): 1.16981624866201: Variant / Double: Mpolynomials (5,2): 2.61996588360387E-04: Вариант / Double
1

1 ответ на вопрос

1
NK1

I did some browsing and obtained the way to get the polynomials for the second order equation

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

Here Mpolynomials is a Variant

Похожие вопросы