0
我想將多個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
在此期間,請看它在一本工作簿中正常工作。 Ii在這裏很晚,明天我將能夠看到它。 – skkakkar