merging duplicate donors and donation amounts from different years
1 Attachment(s)
hi i see lots of posts about merging but could find none that really address my problem.
im trying to organize a 10k+ name donor data base list that has names of donors, with how much they have donated, every year in yearly increments starting from 2006..... the problem is that excel displays the list as follows (see attachment below) what i need it to display is bob $500 600 800 jack 100 400 300 none of the merging commands that i have tried helped if anybody can help that would be much appreciated thanx so much!! |
Quote:
S. |
1 Attachment(s)
sure i attached a pdf ..thnx so much
|
Quote:
Include a bit of and explanation of how you need it to get from one format (i.e. a list of data) to the new format (i.e. the table in your .pdf) and you'll get a much quicker answer. S. |
merging duplicate donors and donation amounts from different years
eli_ explained :
sure i attached a pdf ..thnx so much You did really! What solution are looking for: Functions or VBA? Bruno |
merging duplicate donors and donation amounts from different years
Do you want something like this:
2006-2007 2007-2008 2008-2009 2009-2010 2010-2011 2011-2012 bob 1000 1000 jack 500 1000 500 500 600 ??? Again my first question: are you looking for a solution with formulas or with code? Bruno |
merging duplicate donors and donation amounts from different years
Bruno Campanini formulated the question :
Do you want something like this: 2006-2007 2007-2008 2008-2009 2009-2010 2010-2011 2011-2012 bob 1000 1000 jack 500 1000 500 500 600 ??? Again my first question: are you looking for a solution with formulas or with code? Bruno Sorry, contents unreadable! bob 1000 1000 jack 500 1000 500 500 600 Bruno |
merging duplicate donors and donation amounts from different years
Bruno Campanini laid this down on his screen :
Bruno Campanini formulated the question : Again my first question: are you looking for a solution with formulas or with code? Bruno In the mean time: =================================== Public Sub NewLayout() Dim SourceRange As Range, TargetRange As Range Dim NameColl As New Collection, TargetArray() Dim NumberOfYears As Integer, NumberOfRecords As Long Dim S As Currency, SS As Currency, i, j, k ' Definition ------------------ Set SourceRange = [Sheet1!K16] Set TargetRange = [Sheet1!K27] NumberOfYears = 6 ' ----------------------------- Application.ScreenUpdating = False Application.Calculation = xlCalculationManual Set SourceRange = SourceRange.Resize(SourceRange.End(xlDown) _ .Row - SourceRange.Row + 1) NumberOfRecords = SourceRange.Rows.Count For Each i In SourceRange On Error Resume Next NameColl.Add i, CStr(i) On Error GoTo 0 Next ReDim TargetArray(1 To NameColl.Count, 1 To NumberOfYears) For i = 1 To NumberOfRecords For k = 1 To NumberOfYears For j = 1 To NameColl.Count If SourceRange(i, 1) = NameColl(j) Then TargetArray(j, k) = TargetArray(j, k) _ + SourceRange(i, k + 1) End If Next: Next: Next For j = 1 To NameColl.Count TargetRange(j, 1) = NameColl(j) For k = 1 To NumberOfYears If j = 1 Then TargetRange(0, k + 1) = SourceRange(0, k + 1) TargetRange(0, 1) = SourceRange(0, 1) TargetRange(0, NumberOfYears + 3) = "Totals" End If TargetRange(j, k + 1) = TargetArray(j, k) S = S + TargetArray(j, k) Next TargetRange(j, NumberOfYears + 3) = S SS = SS + S: S = 0 Next TargetRange(NameColl.Count + 1, NumberOfYears + 3) = SS Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End Sub ========================================= Bruno |
1 Attachment(s)
Quote:
|
1 Attachment(s)
Quote:
But I'd have thought a simple pivot table would have been far easier! |
Quote:
|
1 Attachment(s)
Quote:
But again, a pivot table would probably be even easier. |
All times are GMT +1. The time now is 06:41 PM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com