Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Gathering Data
I've asked this question elsewhere with no responses. I have several worksheets, each containing data pertaining to a subset of a population. I also have a master sheet which contains all of the data from all of the subset sheets. Thus, this master sheet contains data pertaining to the entire population. THe master sheet is sorted. Currently whenever I add new data to one of the subset sheets, I manually copy this information onto the master sheet and then resort the master sheet. This is very tedious. How can I cause the master sheet to automatically update and resort every time I add new data to one of the subset sheets? Any help would be greatly appreciated. Thanks. -- Spreadsheet ------------------------------------------------------------------------ Spreadsheet's Profile: http://www.excelforum.com/member.php...o&userid=34730 View this thread: http://www.excelforum.com/showthread...hreadid=551134 |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Gathering Data
Sub CopytheRowoftheActiveCell()
With Worksheets("Master") selection.EntireRow.copy Destination:= .Cells(rows.count,1).End(xlup)(2) ..Range("A1").CurrentRegion.Sort Key1:=.Range("B1"), _ Header:=xlYes End With End With Click in your cell or Cells/rows with the new data and run the macro. -- Regards, Tom Ogilvy "Spreadsheet" wrote: I've asked this question elsewhere with no responses. I have several worksheets, each containing data pertaining to a subset of a population. I also have a master sheet which contains all of the data from all of the subset sheets. Thus, this master sheet contains data pertaining to the entire population. THe master sheet is sorted. Currently whenever I add new data to one of the subset sheets, I manually copy this information onto the master sheet and then resort the master sheet. This is very tedious. How can I cause the master sheet to automatically update and resort every time I add new data to one of the subset sheets? Any help would be greatly appreciated. Thanks. -- Spreadsheet ------------------------------------------------------------------------ Spreadsheet's Profile: http://www.excelforum.com/member.php...o&userid=34730 View this thread: http://www.excelforum.com/showthread...hreadid=551134 |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Gathering Data
Hi Tom, THanks for the reply. I'm new to macros so if you could give me a bit of help with how to create one with this code it would be appreciated. Which parts of the code need to be customized to my specific worksheets? -- Spreadsheet ------------------------------------------------------------------------ Spreadsheet's Profile: http://www.excelforum.com/member.php...o&userid=34730 View this thread: http://www.excelforum.com/showthread...hreadid=551134 |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Gathering Data
If the mastersheet is named something other than Master, change that.
If you want to sort on a different column than column 2, then change Key1:=.Range("B2") to Key1:=.range("F2") (for example to sort on column F) If your data on the master sheet doesn't start with row header in row A starting in column 1 then that would need to be altered. Sub CopytheRowoftheActiveCell() With Worksheets("Master") selection.EntireRow.copy Destination:= .Cells(rows.count,1).End(xlup)(2) ..Range("A1").CurrentRegion.Sort Key1:=.Range("B1"), _ Header:=xlYes End With End With All testing should be performed on a copy of your workbook incase it all turns awry. -- Regards, Tom Ogilvy "Spreadsheet" wrote: Hi Tom, THanks for the reply. I'm new to macros so if you could give me a bit of help with how to create one with this code it would be appreciated. Which parts of the code need to be customized to my specific worksheets? -- Spreadsheet ------------------------------------------------------------------------ Spreadsheet's Profile: http://www.excelforum.com/member.php...o&userid=34730 View this thread: http://www.excelforum.com/showthread...hreadid=551134 |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Gathering Data
VB didn't like parts of the code, so I changed it to this: Sub CopytheRowoftheActiveCell() With Worksheets("All") Selection.EntireRow.Copy Destination:=.Cells(Rows.Count 1).End(xlUp)(2) Range("A1").CurrentRegion.Sort Key1:=.Range("B2"), _ Header:=xlYes End With End Sub When I ran the macro, it said that the sort reference was not valid -- Spreadshee ----------------------------------------------------------------------- Spreadsheet's Profile: http://www.excelforum.com/member.php...fo&userid=3473 View this thread: http://www.excelforum.com/showthread.php?threadid=55113 |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
Gathering Data
You almost got it right:
Sub CopytheRowoftheActiveCell() With Worksheets("All") Selection.EntireRow.Copy Destination:= _ .Cells(Rows.Count, 1).End(xlUp)(2) .Range("A1").CurrentRegion.Sort _ Key1:=.Range("B2"), Header:=xlYes End With End Sub This assumes row 1 on "All" has your headers in it. -- Regards, Tom Ogilvy "Spreadsheet" wrote in message ... VB didn't like parts of the code, so I changed it to this: Sub CopytheRowoftheActiveCell() With Worksheets("All") Selection.EntireRow.Copy Destination:=.Cells(Rows.Count, 1).End(xlUp)(2) Range("A1").CurrentRegion.Sort Key1:=.Range("B2"), _ Header:=xlYes End With End Sub When I ran the macro, it said that the sort reference was not valid. -- Spreadsheet ------------------------------------------------------------------------ Spreadsheet's Profile: http://www.excelforum.com/member.php...o&userid=34730 View this thread: http://www.excelforum.com/showthread...hreadid=551134 |
#7
Posted to microsoft.public.excel.programming
|
|||
|
|||
Gathering Data
Thanks a bunch Tom, the macro is functional now.I just have a fe concerns. 1) Right now the macro adds the selected row to the "ALL" workshee according to the number in column B. This works very well when the ne row to be added to the ALL sheet has a number in column B that i greater than any number in column B of the ALL sheet (the new row i then added to the bottom of the sheet). However, when the new row to b added to the ALL sheet has a number in column B that is less than som of the numbers in column B of the ALL sheet, the macro finds the righ place for the new column and then overwrites whatever was currently i that place on the ALL sheet. This may occur because there could be man rows with the same number in column B. SOLUTION? Can the macro insert a new row and then add the ne information to it? 2) The oonly other issue is this: If I want to merely update a row tha already exists, I don't want this row to be added to the ALL sheet, just want the information to be updated. SOLUTION? The runs a logical test to see if the number in Column (this number is unique) of the currently selected row exists on the AL sheet in Column C. If it does, then the row containing this number i overwritten by the currently selected row. If the number does not exis in Column C of the ALL sheet, the macro proceeds to insert a row in th correct place and writes the information there. Are these suggestions possible? I'm not a programmer so I don't know i that would be easy or not, but it seems like it shouldn't be impossible Thanks again for all the help -- Spreadshee ----------------------------------------------------------------------- Spreadsheet's Profile: http://www.excelforum.com/member.php...fo&userid=3473 View this thread: http://www.excelforum.com/showthread.php?threadid=55113 |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Gathering Data using excel | Excel Discussion (Misc queries) | |||
Gathering data using a form | Excel Discussion (Misc queries) | |||
gathering data | Excel Discussion (Misc queries) | |||
gathering data | Excel Programming | |||
Gathering data | Excel Programming |