我有一个包含原始数据的工作表,称为“原始数据”,我想将此数据复制到另一个名为“数据”的工作表中。
在“原始数据”中,我有一个名为“ RawTab1”的命名范围 在“数据”中,我有一个名为“ DataTable”的表,我要在其中粘贴“ RawTab1”范围内的数据,但不粘贴“ RawTab1”范围内的前两行
在粘贴RawTab1中的新数据之前,A已经使此宏清除了DataTable中的数据:
Dim sht As Worksheet
Set sht = ThisWorkbook.Worksheets("Data")
Range("A3:M3", sht.Range("A3:M3").End(xlDown)).ClearContents
End Sub
这是将RawTab1范围中的数据复制到DataTable中的宏
Sub CopyRawTab1()
Application.Goto Reference:="RawTab1"
Selection.Copy
Sheets("Data").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
所以我的问题是:
答案 0 :(得分:1)
应该类似于以下内容:
Option Explicit
Public Sub Combined()
Dim sht As Worksheet
Set sht = ThisWorkbook.Worksheets("Data")
sht.Range("A3:M3", sht.Range("A3:M3").End(xlDown)).ClearContents
With Worksheets("Raw Data").Range("RawTab1")
'copy everything from RawTab1 but not the first 2 rows
.Resize(RowSize:=.Rows.Count - 2).Offset(RowOffset:=2).Copy
End With
sht.Range("A2").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End Sub
请注意,在复制之前,我结合使用了Range.Resize property和Range.Offset property来删除RawTab1
范围的第一行到第二行。