Я хочу импортировать первый лист всех файлов в выбранной папке и переименовать в исходное имя файла, кроме одного.Если в этих файлах есть файл Forecast Report, я хочу скопировать второй лист.
Я пробовал код, который импортирует все листы из всех файлов, но это излишне, потому что я должен затем войти и удалить много дополнительных листов.Приведенный ниже код отлично подходит для импорта моих файлов.Я ищу способ добавить к этому «если существует прогнозный отчет, скопируйте 2-й лист».
Sub My Data()
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Dim s As String
Application.ScreenUpdating = 0
With Application.FileDialog(msoFileDialogOpen)
.Title = "Select all reports:"
.Filters.Clear
.Filters.Add "All Excel Files", "*.xl*"
.AllowMultiSelect = True
.Show
If .SelectedItems.Count > 0 Then
For i = 1 To .SelectedItems.Count
Workbooks.Open.SelectedItems (i)
Workbooks.Open .SelectedItems(i)
With ActiveWorkbook
s = .Name
.Sheets(1).Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count).Name = Split(s, ".")(0)
.Close 0
End With
Next
End If
End With
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub