Я пытаюсь объединить несколько файлов excel в один файл. Я могу сделать это правильно, но место, где я хочу разместить данные, сталкивается с небольшой проблемой.Как импортировать данные Excel в новую книгу?
Я хочу, чтобы мои данные начинались (вставляются) в ячейке A2 под заголовком, но поскольку мой лист отформатирован как таблица с именованным диапазоном, мои данные вставляются чуть ниже последней строки этой пустой таблицы. Это код, который я использую для вставки данных.
Sub CombineFiles()
Dim path As String, ThisWB As String, lngFilecounter As Long
Dim wbDest As Workbook, shtDest As Worksheet, ws As Worksheet
Dim Filename As String, Wkb As Workbook
Dim CopyRng As Range, Dest As Range
Dim RowofCopySheet As Integer
ThisWB = ActiveWorkbook.Name
path = "C:\MyFolder"
RowofCopySheet = 2
Application.EnableEvents = False
Application.ScreenUpdating = False
Set shtDest = ActiveWorkbook.Sheets("Import")
Range("A2").Select
Filename = Dir(path & "\*.xl??", vbNormal)
If Len(Filename) = 0 Then Exit Sub
Do Until Filename = vbNullString
If Not Filename = ThisWB Then
Set Wkb = Workbooks.Open(Filename:=path & "\" & Filename)
Set CopyRng = Wkb.Sheets(1).Range(Cells(RowofCopySheet, 1), Cells(Cells(Rows.Count, 1).End(xlUp).Row, Cells(1, Columns.Count).End(xlToLeft).Column))
Set Dest = shtDest.Range("A" & shtDest.Cells(Rows.Count, 1).End(xlUp).Row + 1)
CopyRng.Copy
Dest.PasteSpecial xlPasteFormats
Dest.PasteSpecial xlPasteValuesAndNumberFormats
Application.CutCopyMode = False 'Clear Clipboard
Wkb.Close False
End If
Filename = Dir()
Loop
Sheets("Import").Select
Range("A1").Select
End Sub
Есть ли какие-либо изменения, я могу сделать, чтобы код или содержимое ячеек в таблице, чтобы это работало правильно? Спасибо за помощь!
Вы правильно относитесь к буферу, занимая время и ресурсы. Этот код действительно хочет скопировать данные из других листов в книгу правильно? Мой код вытягивается из нескольких файлов. Я отредактирую свою публикацию с полным кодом. – Dennis
В то же время, пожалуйста, посмотрите, как это работает в одной книге. Я опаздываю здесь и завтра, я буду в состоянии заглянуть в него. – skkakkar