View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.misc
Per Jessen Per Jessen is offline
external usenet poster
 
Posts: 1,533
Default Macro to populate multiple tabs from a master file

Hi again Tanya

Try if this is what you need, just change ranges as desired.

Sub CreateReport()
Dim DataSh As Worksheet
Dim TemplSh As Worksheet
Dim FilterRange As Range
Dim ListCell As String
Dim Site As String

Application.ScreenUpdating = False
Set DataSh = Worksheets("Data")
Set TemplSh = Worksheets("Template")
DataSh.Activate
Set FilterRange = Range("A1", Range("A1").End(xlDown))
ListCell = "X1" ' Change to unused column on Data sheet

Range(ListCell, Range(ListCell).End(xlDown)).ClearContents

FilterRange.AdvancedFilter Action:=xlFilterCopy, _
CopyToRange:=Range(ListCell), Unique:=True

NoOfTabs = DataSh.Range(ListCell, DataSh.Range(ListCell) _
.End(xlDown)).Rows.Count - 1

Set FilterRange = FilterRange.Resize(FilterRange.Rows.Count, 5)
FilterRange.Select
For sh = 1 To NoOfTabs
Worksheets("Template").Copy After:=Sheets(Sheets.Count)
Site = Sheets("Data").Range(ListCell).Offset(sh, 0).Value
Sheets(Sheets.Count).Name = Site
DataSh.Activate
Selection.AutoFilter Field:=1, Criteria1:=Site
Selection.Copy Sheets(Site).Range("A4") ' change range to suit
Next
FilterRange.AutoFilter
Application.ScreenUpdating = True
End Sub

Regards,
Per

"Tanya" skrev i meddelelsen
...
A good start, but let me give more detail. I have one Data sheet, and the
goal is to have as many Report sheets as there are values in the column
named, "Site" (around 75, now). The idea is to read the "Site" column
from
the Data sheet, and if the value is "10", to populate the appropriate
cells
in the tab with the site name, "10".

If the Data Sheet contains data like this:

Site Gender Age Score1 Score1
1 f 25 34 56
10 m 23 35 57


I want tab '1' to read the Data sheet, search the Site column, and if it
finds a value of '1', to pull the data in the record associated with '1'
into
the preordained cells in tab '1'. Some of these cells in tab 1 have
formulas,
some are direct moves.

The issue is that the number of values in the Site column may change, so
creating a link is not the way to go (data for Site '1' will not always
occur
in the same row).