To solve the problem described above, I wrote the following function for use as a formula in your Excel sheet (ie in cell B5 of example):
Code:
Function getRoundedSum (rngFigures As Range, strRndType As String) As Integer Function getRoundedSum (rngFigures As Range, strRndType As String) As Integer
Dim i As Integer
Sun lngTotal As Long
Sun strSubPgm, strFormat As String
Sun varFiguresArray () As Variant
On Error GoTo ErrorHandler
strSubPgm = 'Function' getRoundedSum () "
getRoundedSum = 0
lngTotal = 0
varFiguresArray () = rngFigures.Value
For i = 1 To UBound (varFiguresArray)
Select Case UCase (strRndType)
Case "T"
strFormat "#,## = 0 "
Case "M"
strFormat "#,## = 0,, "
Case Else
Exit Function
End Select
lngTotal = lngTotal + Format (CLng (varFiguresArray (i, 1)), strFormat)
Next i
getRoundedSum = lngTotal
ErrorHandler:
Call handleError (Err.Number, Err.Description, strSubPgm)
End Function
Dim i As Integer
Sun lngTotal As Long
Sun strSubPgm, strFormat As String
Sun varFiguresArray () As Variant
On Error GoTo ErrorHandler
strSubPgm = 'Function' getRoundedSum () "
getRoundedSum = 0
lngTotal = 0
varFiguresArray () = rngFigures.Value
For i = 1 To UBound (varFiguresArray)
Select Case UCase (strRndType)
Case "T"
strFormat "#,## = 0 "
Case "M"
strFormat "#,## = 0,, "
Case Else
Exit Function
End Select
lngTotal = lngTotal + Format (CLng (varFiguresArray (i, 1)), strFormat)
Next i
getRoundedSum = lngTotal
ErrorHandler:
Call handleError (Err.Number, Err.Description, strSubPgm)
End Function
Bookmarks