Код VBA не работает - попытка объединить несколько файлов Excel в одну книгу
Я очень новичок в VBA, и я пытался изменить этот код. Файлы, расположенные в:
/ Пользователи /Isa/Desktop/ Участники /S02/
Я хотел бы создать новую рабочую книгу под названием S02.Результаты, объединяющие четыре следующих файла:
S02_BirdsRun1-BirdsRun1.xls S02_birdsRun2-BirdsRun2.xls S02_SyllableRun1-SyllablesRun1.xls S02_SyllableRun2-SyllablesRun2.xls
и сохраните имена файлов как новые имена рабочих листов.
В конце концов я хотел бы, чтобы этот макрос прошел через всех разных участников (S03, S04), которые имеют одинаковые файлы, и создал новую рабочую книгу из 4 файлов.
Буду признателен за любую помощь! Вот код, который я пытаюсь изменить:
"Объединение рабочих книг" Томми Майлза "Этот образец просматривает все файлы Excel в указанном каталоге и объединяет их в одну рабочую книгу. Переименовывает листы на основе имени оригинальной рабочей книги:
Sub CombineWorkbooks()
Dim CurFile As String
Dim DirLoc As String
Dim DestWb As Workbook
Dim ws As Object 'allows for different sheet types
DirLoc = ThisWorkbook.Path & "/Users/Isa/Desktop/Participants/Try/" 'location of files
CurFile = Dir(DirLoc & "*.xls*")
Application.ScreenUpdating = False
Application.EnableEvents = False
Set DestWb = Workbooks.Add(xlWorksheet)
Do While CurFile <> vbNullString
Dim OrigWb As Workbook
Set OrigWb = Workbooks.Open(FileName:=DirLoc & CurFile, ReadOnly:=True)
' Limit to valid sheet names and remove .xls*
CurFile = Left(Left(CurFile, Len(CurFile) - 5), 29)
For Each ws In OrigWb.Sheets
ws.Copy After:=DestWb.Sheets(DestWb.Sheets.Count)
If OrigWb.Sheets.Count > 1 Then
DestWb.Sheets(DestWb.Sheets.Count).Name = CurFile & ws.Index
Else
DestWb.Sheets(DestWb.Sheets.Count).Name = CurFile
End If
Next
OrigWb.Close SaveChanges:=False
CurFile = Dir
Loop
Application.DisplayAlerts = False
DestWb.Sheets(1).Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
Application.EnableEvents = True
Set DestWb = Nothing
End Sub
Я получаю сообщение об ошибке: "CurFile = Dir (DirLoc &".xls")", но я понятия не имею, почему. Макрос хранится в моей личной рабочей книге. Я использую Microsoft Excel для Mac 2011
Спасибо,
это