將Excel-Tables從多個文件複製和粘貼到單個文件的方法是什麼?特別是如何確定在makro中複製和粘貼使用的行的範圍?聯合多個Excel表單。 (粘貼在彼此之下)
0
A
回答
1
如果你的意思是表你可以使用ListObjects
集合引用它們。
嘗試此操作(位於目標工作簿中的代碼)
此代碼將所有源表格作爲單獨的表格複製,其間有空行。如果要將數據合併到單個表中,則需要複製lo.DataBodyRange
而不是lo.Range
,然後處理標題行並將其轉換爲表格。
Sub CopyTables()
Dim wbFrom As Workbook
Dim shFrom As Worksheet
Dim shTo As Worksheet
Dim lo As ListObject
Dim clTo As Range
' Setup Destination for copied tables
Set shTo = ThisWorkbook.Worksheets("DestinationSheet") ' <-- change name to your destination sheet name
' remove any existing data
shTo.UsedRange.EntireRow.Delete
Set clTo = shTo.Cells(1, 1)
' Loop through open workbooks
For Each wbFrom In Application.Workbooks
' except destination wb
If wbFrom.Name <> ThisWorkbook.Name Then
' loop through all sheets
For Each shFrom In wbFrom.Worksheets
' loop through all tables on sheet
For Each lo In shFrom.ListObjects
lo.Range.Copy clTo
' offset to next paste location, leave one empty row between tables
Set clTo = clTo.Offset(lo.ListRows.Count + 2, 0)
Next
Next
End If
Next
End Sub
替代的內for循環粘貼到一個單一的範圍
For Each lo In shFrom.ListObjects
lo.DataBodyRange.Copy clTo
Set clTo = clTo.Offset(lo.ListRows.Count, 0)
Next
2
如果這是一次性操作,可能是最快的方法是將激活Office剪貼板(在右下角的箭頭首頁標籤)。這允許最多24個分開的範圍被收集並粘貼在另一個之下。
假設數據是在一個工作簿,並開始在第2行上的每個片,如在下面的例子中,可以:
- 選擇所有選項卡
- 選擇第一薄片 上所有的行
- 按Ctrl + C,Ctrl + Page Down,多次複製所有數據
- 選擇一個新的工作表,然後單擊粘貼所有
請注意,只複製使用的範圍,以便可以複製整個工作表範圍,而不需要在每個工作表上定位最後一個單元格。
相關問題
- 1. 如何彼此粘貼視圖
- 2. excel多個粘貼特價
- 3. 在彼此之上的多個佈局
- 4. 彼此之下的列Bootstrap
- 5. 將excel網格粘貼到HTML表單中並粘貼到excel文檔中
- 6. 在Access和Excel之間複製/粘貼
- 7. Excel驗證多個值粘貼
- 8. 2個絕對盒子彼此之下..?
- 9. Excel:根據多個標準在表格之間複製粘貼行
- 10. Excel宏:粘貼時出錯 - 向下移動10行 - 粘貼 - 10行 - 粘貼等
- 11. 在Excel中複製多行並粘貼到另一個表格
- 12. 複製單元格並將它們相乘,然後將每個單元格粘貼到彼此的下方
- 13. MS-Access:將兩個表「彼此在下面」合併
- 14. 將div放在彼此之下
- 15. 一個佈局下的兩個RecyclerViews在彼此之下
- 16. 浮動列在彼此之下
- 17. [R粘貼多個
- 18. 浮動兩個列表彼此之上?
- 19. jquery下拉菜單粘貼
- 20. 如何在ckeditor中粘貼excel表格?
- 21. 在Word中粘貼Excel圖表,VBA
- 22. VBA - 從多個Excel文件複製並粘貼到單個Excel文件
- 23. 在Excel中粘貼值C#
- 24. 粘貼Excel VBA中
- 25. 粘貼圖像excel
- 26. iOS:tabBarItems在彼此之上
- 27. 在表格之間查找和粘貼值Excel
- 28. 使用VBA從HTML表複製/粘貼,粘貼到Excel
- 29. 將JLabels置於彼此之下
- 30. Excel中的單個工作表和粘貼值不是公式
最簡單的方法是遍歷工作表,找到最後一行(http://stackoverflow.com/questions/11169445/error-finding-last-used-cell-in-vba)和最後一列(http://stackoverflow.com/questions/11883256/copy-last-column-with-data-on-specified-row-to-the-next-blank-column)來確定範圍並簡單地複製它過度。 –