는 아니, 당신이 원하는 것을 VB6의 기능을 합산 거기에 내장되지 않은,하지만 당신은 쉽게 하나를 쓸 수 있습니다 :
Public Function SumRange(ByRef dblArray() As Double, Optional ByVal StartRange As Long = -1, Optional ByVal Length As Long = -1)
'-1 on StartRange indicates start at low bound
If StartRange = -1 Then
StartRange = LBound(dblArray)
End If
'-1 on Length indicates to span all elements to the end of the array
If Length = -1 Then
Length = UBound(dblArray) - StartRange - 1
End If
Dim dTotal As Double
Dim lNdx As Long
For lNdx = StartRange To StartRange + Length - 1
dTotal = dTotal + dblArray(lNdx)
Next lNdx
SumRange = dTotal
End Function
나는 이것을 확인, 그래서 오타보고 sytaz하지 않았다 유의하시기 바랍니다. 다음과 같이 사용할 수 있습니다 :
dResult = SumRange(myArray) 'summ all
dResult = SumRange(myArray, 3) 'sum all starting at offset 3
dResult = SumRange(myArray, , 2) 'sum the the first 2 elements
dResult = SumRange(myArray, 2, 4) 'sum a range start at 2 and with length of 4
당신은 당신이 용납 않을 경우 지정하는 다른 옵션 부울을 (무시) 범위를 벗어날 수있는 방법을 수정할 수 있습니다. 배열에 존재하는 것보다 더 많은 원소를 더하기를 요청하면 오류가 발생합니다.
vb6 또는 vb.net 중 어떤 것을 사용하고 있는지 지정할 수 있습니까? vb.net 및 프레임 워크 3.5의 경우 Linq를 사용하여 처음 5 개 항목을 '취한'후 합계 할 수 있습니다. – Aphelion
방금 게시물을 편집했습니다 : vb6을 사용하고 있습니다 – Wawel100
코드를 재사용하는 것이 목적이라면 Take 메서드와 Sum 메서드를 구현하는 자체 메서드를 만들 수 있습니다. – Aphelion