有没有办法将单元格范围从多个工作表复制到另一个工作表?例如:
的 Sheet 1中
苹果
葡萄
桃子
樱桃
的 Sheet 2中
橙子
梨
香蕉
蓝莓
我需要结果
表Sheet 3
苹果
葡萄
桃子
樱桃
橙子
梨
香蕉
蓝莓
假设我在表1和表1中的A列中有数据。 2,我需要在Sheet3上的A列中显示组合结果。基本上我需要显示表1和表1中的所有项目。 Sheet3中的2列在一列中。
有什么想法吗? 提前谢谢。
答案 0 :(得分:1)
由于您的数据位于同一列,我假设您真正需要做的就是将每个工作表复制粘贴到一个主工作表中。这个VBA功能我在网上找了一段时间(对原始创作者很抱歉,我希望我知道它是谁,所以我可以信任他)。它将所有工作表组合成一个名为“Master”的工作表。节省了大量时间!我希望这有助于或让你接近你需要的地方。
Sub CreateMasterSheet()
Application.ScreenUpdating = False
Dim wrk As Workbook
Dim sheet As Worksheet
Dim masterSheet As Worksheet
Dim rng As range
Set wrk = ActiveWorkbook
For Each sheet In wrk.Worksheets
If sheet.Name = "Master" Then
MsgBox "There is a worksheet called as 'Master'." & vbCrLf & _
"Remove or rename this worksheet.", vbOKOnly + vbExclamation, "Error"
Exit Sub
End If
Next sheet
Set masterSheet = wrk.Worksheets.Add(After:=wrk.Worksheets(wrk.Worksheets.count))
masterSheet.Name = "Master"
For Each sheet In wrk.Worksheets
If sheet.Index = wrk.Worksheets.count Then
Exit For
End If
Set rng = sheet.range(sheet.cells(1, 1), sheet.cells(65536, 1).End(xlUp).Resize(, 256))
masterSheet.cells(65536, 1).End(xlUp).Offset(1).Resize(rng.Rows.count, rng.Columns.count).Value = rng.Value
Next sheet
masterSheet.Columns.AutoFit
Application.ScreenUpdating = True
End Sub
答案 1 :(得分:0)
您没有提及您的Excel版本。在2003年和2010年,您可以使用Data,Consolidate执行此操作。请参阅您的版本帮助以了解该过程。