为了账号安全,请及时绑定邮箱和手机立即绑定

从一个工作簿复制并粘贴到另一个工作簿

从一个工作簿复制并粘贴到另一个工作簿

aluckdog 2019-07-05 14:39:25
从一个工作簿复制并粘贴到另一个工作簿我编写了以下代码,并不断地看到以往的课堂教学方法失败了..我试图克服这个问题,但似乎什么也没有解决。我试图从一本工作簿中复制一整张工作表,并将其粘贴到另一本工作簿中:Set x = Workbooks.Open(" path to copying book ")Workbooks.Open(" path to copying book ").Activate Range("A1").Select'Cells.SelectSelection.CopySet y = Workbooks.Open("path to pasting book")Workbooks.Open("Path to pasting book").ActivateWith y     Sheets("sheetname").Cells.Select     Range("A1").PasteSpecial    'Sheets("sheetname").PasteSpecial     .CloseEnd WithWith x    .CloseEnd With
查看完整描述

2 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

你用细胞复制。
如果是这样的话,不需要PasteSpecial,因为您正在以完全相同的格式复制数据。
这是您的代码和一些修复。

Dim x As Workbook, y As WorkbookDim ws1 As Worksheet, ws2 As WorksheetSet x = Workbooks.Open("path to copying book")
Set y = Workbooks.Open("path to pasting book")Set ws1 = x.Sheets("Sheet you want to copy from")
Set ws2 = y.Sheets("Sheet you want to copy to")ws1.Cells.Copy ws2.cells
y.Close Truex.Close False

但是,如果您确实希望粘贴特殊,请使用动态范围(“地址”)进行复制。
就像这样:

ws1.Range("Address").Copy: ws2.Range("A1").PasteSpecial xlPasteValues
y.Close Truex.Close False

注意到:后冒号.Copy这是Statement Separating性格。
使用Object.PasteSpecial需要在新行中执行。
希望这能让你走。


查看完整回答
反对 回复 2019-07-05
  • 2 回答
  • 0 关注
  • 744 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信