View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Tim Zych Tim Zych is offline
external usenet poster
 
Posts: 389
Default Count every group of numbers whose sum is zero & put number next to each number

Here is one way. I made certain assumptions:

1. The numbers will always be contiguous by group. Each series of numbers
which must sum to zero are together from the start.

2. What happens if there are numbers which, pursuant to rule #1, do not
evemtially sum to zero? Omit them and keep processing for the duration.


Sub GroupSumZeroes()
Dim rng As Range, n As Long, ttl As Double, nIndex As Long
Dim cell1 As Range, cell2 As Range
Set rng = Range(Range("A1"), Range("A1").End(xlDown)) ' Adjust as needed
rng.Offset(, 1).ClearContents
nIndex = 1
Set cell1 = rng(1)
For n = 1 To rng.Cells.Count
ttl = ttl + rng(n).Value
If ttl = 0 Then
Set cell2 = rng(n)
Range(cell1, cell2).Offset(, 1).Value = nIndex
Set cell1 = cell2(2)
nIndex = nIndex + 1
End If
Next
End Sub



--
Tim Zych
http://www.higherdata.com
Workbook Compare - Excel data comparison utility
Free and Pro versions


"al" wrote in message
...
I have the following numbers in column A
1
2
3
-2
-4
5
5
-10
3
3
-6

I need in column B next to each number - the number telling me to
which
group of sum zero it belows(by selecting first cell next to column A
up to last cell - (B1:B11) i.e

1,2,3,-2,-4 would each have number 1 next to each of them in column B
(first group of sum zero)

5,5,-10 would each have number 2 next each of them in column B (second
group of sum zero)

3,3,-6 would each have number 3 next to each of them in column B
(third group of sun zero)


Need a macro which would work in any range of numbers in any column
( not necessarily column A i.e if numbers are in column D - count
would be in column E next to the number

Pls help thxs