2009-06-30 5 views
1

늦은 Frank Kabel이 작성한 Daily Dose of Excel 웹 사이트에는 ATP 기능을 사용할 수있는 몇 가지 공식이 있습니다. Excel 전문가가 아니기 때문에 VB6로 변환하는 데 어려움을 겪고 있습니다. 합니다 (NDA이 부족하면 내가이 일을 해요 이유는 관련이 있습니다.)SERIESSUM 함수를 VB6으로 변환하려면 어떻게해야합니까?

을 나는 데 문제는 코드 즉, SERIESSUM 위해 서 함께 지금

=SUMPRODUCT(coefficients,x^(n+m*(ROW(INDIRECT("1:"&ROWS(coefficients)))-1))) 

SUMPRODUCT 행을 기능은 아직

  • 방법입니다 내가 '수'없는 무엇

    Public Function SUMPRODUCT(a1 As Variant, a2 As Variant) As Double 
        Dim dRes As Double 
        Dim dVal As Double 
        Dim i As Long 
        If LBound(a1) = LBound(a2) And UBound(a1) = UBound(a2) Then 
         For i = LBound(a1) To UBound(a1) 
          dVal = a1(i) * a2(i) 
          dRes = dRes + dVal 
         Next 
        End If 
        SUMPRODUCT = dRes 
    End Function 
    
    Public Function ROWS(a1 As Variant) 
        ROWS = UBound(a1) - LBound(a1) + 1 
    End Function 
    

    으로 매우 간단하게 렌더링 할 수있었습니다배열

  • 그 배열이 거기

모든 엑셀 전문가를 포함 할 수 있습니다 어떤 평가?

답변

2

ROW (INDIRECT ("1"& ROWS (계수))) - 계수가 5 개 행이 경우 1

이 배열 {1,2,3,4,5}를 반환한다. 진행 나머지

{1m, 2m, 3m, 4m, 5m)

{N + 1m, N + 2m, N + 3m, N + 4m, N + 5m)

인 결과 배열은 coeffecients에 대해 '계열 합계'를 얻습니다. 결과 배열은 coeffecients와 '계열 합계'됩니다.

수식의 강조 표시된 부분에 Ctrl + =를 사용하여 진행률을 Excel의 수식 입력 줄에서 볼 수 있습니다. 수식 입력 줄에 표시 할 수있는 문자 수에는 제한이 있습니다. 따라서 계수에 많은 행이 있으면 "수식이 너무 길다"라는 오류 메시지가 나타날 수 있습니다.

수식 입력 줄에서 ROW (INDIRECT (" 1 : "& ROWS (계수)))) - 1을 입력하고 Ctrl + =를 누릅니다. 그런 다음 수식의 다른 부분을 선택하고 여는 괄호와 닫는 괄호가 일치하는지 확인한 다음 Ctrl + =를 누릅니다. 전체 수식을 계산할 때까지이 작업을 반복 할 수 있습니다. 완료되면 셀에서 벗어나서 원래 공식을 잃지 않도록하십시오.

도 참조하십시오. Episode 474 here.

+0

멋진. 기이. 나는 하루 종일 답장을 기다리고 로그인했습니다. 고마워, 고마워, 고마워. 아산테. 슈크 리아. 메르시. 그레시아. 시에시에. Obligad. Tenkyu tru. 단케. 탁. – bugmagnet

관련 문제