Vba 将数据从工作表1移动到工作表2

Vba 将数据从工作表1移动到工作表2,vba,excel,Vba,Excel,我目前正在工作表1和工作表2之间移动数据。表1包含项目的平均值。BN/BO列包含平均值。它通过的是forumula而不是平均数。使用我正在使用的方法而不使用像=Sheet2这样的新方法对此进行任何修复!B2 Dim Lastrow2 As Integer Lastrow2 = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row Sheets("Sheet1").Range("K4:K" & Lastrow2).Copy Sheets("Shee

我目前正在工作表1和工作表2之间移动数据。表1包含项目的平均值。BN/BO列包含平均值。它通过的是forumula而不是平均数。使用我正在使用的方法而不使用像
=Sheet2这样的新方法对此进行任何修复!B2

Dim Lastrow2 As Integer
Lastrow2 = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row

Sheets("Sheet1").Range("K4:K" & Lastrow2).Copy Sheets("Sheet2").Range("B2")
Sheets("Sheet1").Range("C4:C" & Lastrow2).Copy Sheets("Sheet2").Range("A2")
Sheets("Sheet1").Range("BN4:BN" & Lastrow2).Copy Sheets("Sheet2").Range("C2")
Sheets("Sheet1").Range("BO4:BO" & Lastrow2).Copy Sheets("Sheet2").Range("D2")
Sheets("Sheet2").Range("A2:D" & Lastrow2).RemoveDuplicates Columns:=Array(1, 2, 3, 4), Header:=xlNo

出于性能原因,我建议您更改方法(避免使用剪贴板会更有效),但如果您想使用相同的方法,可以使用
.PasteSpecial xlPasteValues

Sheets("Sheet1").Range("K4:K" & Lastrow2).Copy Sheets("Sheet2").Range("B2").PasteSpecial xlPasteValues
Sheets("Sheet1").Range("C4:C" & Lastrow2).Copy Sheets("Sheet2").Range("A2").PasteSpecial xlPasteValues
Sheets("Sheet1").Range("BN4:BN" & Lastrow2).Copy Sheets("Sheet2").Range("C2").PasteSpecial xlPasteValues
Sheets("Sheet1").Range("BO4:BO" & Lastrow2).Copy Sheets("Sheet2").Range("D2").PasteSpecial xlPasteValues

出于性能原因,我建议您更改方法(避免使用剪贴板会更有效),但如果您想使用相同的方法,可以使用
.PasteSpecial xlPasteValues

Sheets("Sheet1").Range("K4:K" & Lastrow2).Copy Sheets("Sheet2").Range("B2").PasteSpecial xlPasteValues
Sheets("Sheet1").Range("C4:C" & Lastrow2).Copy Sheets("Sheet2").Range("A2").PasteSpecial xlPasteValues
Sheets("Sheet1").Range("BN4:BN" & Lastrow2).Copy Sheets("Sheet2").Range("C2").PasteSpecial xlPasteValues
Sheets("Sheet1").Range("BO4:BO" & Lastrow2).Copy Sheets("Sheet2").Range("D2").PasteSpecial xlPasteValues

查看粘贴特性只需将两个范围设置为相等的
范围([Range where I want data copy**to**)。值=范围([Range where I want data**from**).Value
。这也很有帮助,因为您可以避免使用剪贴板。@BruceWayne的方法也是我推荐的方法。这是一个很好的实践。查看Paste Special只需将两个范围设置为相等的
范围([Range where I want data copy**to**)。Value=Range([Range where I want data**from**).Value
。这也很有帮助,因为您可以避免使用剪贴板。@BruceWayne的方法也是我推荐的。这是一个很好的实践。