Czy tablica może być używana w funkcji LinEst w VBA?

Zasadniczo, zamiast wybierać zakres z komórek, mam zapisane wartości w tablicy za pomocą pętli. Idealnie chciałbym używać tych tablic jako znanych funkcji x i y w funkcji LinEst.

Cel tego jest nieistotny, ponieważ to, co próbuję zrobić, jest tylko częścią kodu, który już napisałem. Jednak pętle Do (dobrze przynajmniej 2.) muszą być tam jako kod, który próbuję zastosować, aby wymagały ich działania.

Poniżej znajduje się prosty przykład kodu, który próbuję napisać.

Sub Test()

Dim Counter As Long
Dim Counter_1 As Long

Dim x As Single
Dim y As Single
Dim i As Single
Dim m As Single

Dim myArray_1() As Single
Dim myArray_2() As Single

ReDim myArray_1(i)
ReDim myArray_2(i)

Counter = 2
Counter_1 = 2

i = 0

Cells(1, 4) = "m"

x = Cells(Counter, 1)
y = Cells(Counter, 2)

Do

Do Until x = 0

myArray_1(i) = x
myArray_2(i) = y

Cells(Counter, 6) = myArray_1(i)
Cells(Counter, 7) = myArray_2(i)


i = i + 1

Counter = Counter + 1

x = Cells(Counter, 1)
y = Cells(Counter, 2)

ReDim Preserve myArray_1(i)
ReDim Preserve myArray_2(i)

Loop

m = WorksheetFunction.LinEst(myArray_2, myArray_1)

Cells(Counter_1, 4) = m

Loop

End Sub

Zasadniczo chcę, aby funkcja LinEst używała każdej tablicy jako znanych y i znanych x-ów. W zależności od tego, co zmieniam, otrzymuję różne błędy, takie jak „niedopasowanie typu” lub „nie można uzyskać właściwości LinEst klasy funkcji pracy”. Tak czy inaczej, jak dotąd nie miałem szczęścia, żeby to zadziałało, a to zawsze błędy. Z funkcji LinEst chcę tylko gradient „m”.

Jedynym powodem, dla którego zostały wprowadzone do komórek, jest upewnienie się, że kod robi to, o co proszę.

Z tego, co mogę powiedzieć, rozglądając się po Internecie, można użyć tablicy w funkcji LinEst, jednak przykłady są zazwyczaj drastycznie różne od tego, co próbuję zrobić.

Gdyby ktoś w ogóle mógł mi pomóc, byłbym najbardziej wspaniały. Z góry dziękuję. Wszelkie pytania prosimy zadawać.

questionAnswers(2)

yourAnswerToTheQuestion