VBA:复制不带剪贴板的粘贴

时间:2010-10-10 16:10:47

标签: excel-vba vba excel

有没有办法在不使用剪贴板的情况下进行一行复制/粘贴。 复制一个范围 - 行到另一个工作表粘贴范围 - 整行。我需要价值观,而不是公式。

 Sheets("Data").Select 
 ActiveCell.EntireRow.Copy

 Sheets("TSP").Select
 ActiveCell.PasteSpecial Paste:=xlPasteValues

2 个答案:

答案 0 :(得分:9)

此代码复制值(不是公式)。

Sub a()
  Worksheets("Sheet2").Range("TS").Value=Worksheets("Sheet1").Range("1:1").Value
End Sub  

其中“TS”是范围的名称(一行)。

这是你想要达到的目标吗?

修改

要将活动行复制到Sheet2.Row2(例如),您可以尝试:

Sub a()
 Dim myrow As Integer
 myrow = ActiveWindow.RangeSelection.Row
 Worksheets("Sheet2").Range("2:2").Value = Worksheets("Sheet1").Rows(myrow).Value
End Sub

HTH!

答案 1 :(得分:1)

出于某种原因,没有。 PasteSpecial就是剪贴板。

如果您只需要值,请复制For循环。