See if this is close. This will loop through all files in a directory that you choose. If there are any files that you don't need, an adjustment will need to be made. I am unaware of your sheet names so I used the first sheet in each workbook. Also, the FileDialog object won't work with earlier versions of Excel. We can fix that if necessary.
CODE
[color="blue"]Sub[/color] CompileWBs()
[color="blue"]Dim[/color] strFileName [color="blue"]As[/color] [color="blue"]String[/color], strPath [color="blue"]As[/color] [color="blue"]String[/color]
[color="blue"]Dim[/color] fd [color="blue"]As[/color] FileDialog, vArr [color="blue"]As[/color] [color="blue"]Variant[/color]
[color="blue"]Dim[/color] wb [color="blue"]As[/color] Workbook, wb2 [color="blue"]As[/color] Workbook
[color="blue"]Set[/color] fd = Application.FileDialog(msoFileDialogFolderPicker)
[color="blue"]With[/color] fd
.AllowMultiSelect = [color="blue"]False[/color]
.InitialFileName = "C:\"
[color="blue"]If[/color] .Show <> -1 [color="blue"]Then[/color] [color="blue"]Exit[/color] [color="blue"]Sub[/color]
strPath = .SelectedItems(1)
[color="blue"]End[/color] [color="blue"]With[/color]
[color="blue"]Set[/color] wb2 = Workbooks.Add
strFileName = Dir(strPath & "\", vbNormal)
[color="blue"]Do[/color] [color="blue"]While[/color] [color="blue"]CBool[/color](Len(strFileName))
[color="blue"]Set[/color] wb = Workbooks.Open(strPath & "\" & strFileName)
vArr = wb.Sheets(1).Range("I2:BZ2")
wb2.Sheets(1).Range("A65536").End(xlUp)(2) _
.Resize(, [color="blue"]UBound[/color](vArr, 2)) = vArr
wb.Close [color="blue"]False[/color]
strFileName = Dir
[color="blue"]Loop[/color]
[color="blue"]Set[/color] wb = [color="blue"]Nothing[/color]
[color="blue"]Set[/color] wb2 = [color="blue"]Nothing[/color]
[color="blue"]End[/color] [color="blue"]Sub[/color]
Edited by: Luceze on Mon Oct 23 15:46:09 EDT 2006.