Я начинающий макрос, пытаюсь добавить код макроса, который найдет книги, в которых первые 6 символов в имени файла - "Пользовательский", а любые символы после него допустимы. Код будет добавлен в макрос ниже. Это желательно, потому что у меня часто есть много других открытых книг с именами файлов, которые не начинаются с символов "Пользовательский", и я не хочу собирать какие-либо данные из них.
Я предполагаю, что это повлечет за собой изменение строкового кода, который теперь читает
«Если wb.Имя <> ThisWorkbook.Имя Тогда "
что-то вроде:
«Если wb.Имя = пользовательский * .xl?? Затем"
- Excel 2010
- Все файлы открыты.
- Расширения файлов включают .xls, .xlxm, .xlxs
- Включить только те файлы, в которых первые 6 букв имени файла являются «пользовательскими».
Код:
Sub getdata()
' Brings data (Tables)from workbooks that are open places the data in one large table in a workbook.
Dim sh As Worksheet, wb As Workbook, lr As Long..
Set sh = ThisWorkbook.Sheets(1) 'Edit sheet name
For Each wb In Application.Workbooks
If wb.Name <> ThisWorkbook.Name Then
''lr = wb.Sheets(1).Cells.Find("*", , xlFormulas, xlPart, xlByRows, xlPrevious).Row ' goes to bottom of data
lr = wb.Sheets(1).Cells.Find("*", , xlFormulas, xlPart, xlByRows, xlPrevious).Offset(-3, 0).Row If Application.CountA(sh.Rows(4)) = 0 Then
wb.Sheets(1).Range("A4:P" & lr).Copy sh.Range("A4")
Else
wb.Sheets(1).Range("A4:P" & lr).Copy sh.Cells(Rows.Count, 1).End(xlUp)(2)
End If
End If
Next
End Sub