Da nisam obratio pažnju da si naveo da je reč o sto tabela. Onda je rešenje da se napiše kod. Našao sam nešto na netu pa sam prepravio za tvoj slučaj. Komentari su ostali na engleskom mrzelo me je da prevodim. Sve tabele koje kombinuješ stavi u posebnu fasciklu subdirectory (ili već je nazovi kako ti odgovara ali izmeni u kodu) ispod fascikle u kojoj se nalazi rezultujuća tabela. U kodu takodje zameni oblast A2:D20 sa onim što tebi treba.
Code:
Sub CombineFromAllFilesInADirectory()
'Uses methods found in http://vbaexpress.com/kb/getarticle.php?kb_id=151 and
' http://vbaexpress.com/kb/getarticle.php?kb_id=221
' Modified by P.Jovanovic 20/7/2006
Dim Path As String 'string variable to hold the path to look through
Dim FileName As String 'temporary filename string variable
Dim tWB As Workbook 'temporary workbook (each in directory)
Dim aRange As Range ' range in master workbook
Dim RowCount As Long 'Rows used on master sheet
Dim uRange As Range 'usedrange for each temporary sheet
'***** Set folder to cycle through *****
Path = ThisWorkbook.Path & "\subdirectory\" 'Change as needed, ie "C:\"
Application.EnableEvents = False 'turn off events
Application.ScreenUpdating = False 'turn off screen updating
Set aRange = ThisWorkbook.ActiveSheet.Range("A2:D20") 'set active range variable in master workbook
If Right(Path, 1) <> Application.PathSeparator Then 'if path doesnt end in "\"
Path = Path & Application.PathSeparator 'add "\"
End If
FileName = Dir(Path & "*.xls", vbNormal) 'set first file's name to filename variable
Do Until FileName = "" 'loop until all files have been parsed
If Path <> ThisWorkbook.Path Or FileName <> ThisWorkbook.Name Then
Set tWB = Workbooks.Open(FileName:=Path & FileName) 'open file, set to tWB variable
Set uRange = tWB.Sheets(1).Range("A2:D20") 'set used range
uRange.Copy
aRange.PasteSpecial Operation:=xlAdd ' add values from open file
Application.CutCopyMode = False
tWB.Close False 'close temporary workbook without saving
End If
FileName = Dir() 'set next file's name to FileName variable
Loop
Application.EnableEvents = True 're-enable events
Application.ScreenUpdating = True 'turn screen updating back on
'Clear memory of the object variables
Set tWB = Nothing
Set mWB = Nothing
Set aRange = Nothing
Set uRange = Nothing
End Sub