首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Excel宏:粘贴时出错-下移10行-粘贴- 10行-粘贴等

Excel宏:粘贴时出错-下移10行-粘贴- 10行-粘贴等
EN

Stack Overflow用户
提问于 2010-08-25 22:21:50
回答 1查看 861关注 0票数 0

我正在尝试从同一范围(A4:A8)的三个工作簿(一次一个)复制数据,并将它们粘贴到新工作簿中。唯一的问题是我试图让粘贴部分在每个循环中向下移动10行。

我在PasteSpecial线路上收到一条错误消息。我不知道为什么?

(我是一个Excel宏新手,但我正在尝试)

任何指导/指针都是非常感谢的。

非常感谢

麦克。

代码语言:javascript
运行
复制
Dim TestWorkbook as variant,
Dim mytest as variant
TestWorkbook= array(“test1”, “test2”, “test3”) ‘3 source files
i = 0
 For Each mytest  In TestWorkbook 
 Workbooks.Open Filename:="S:\ExcelWork\" + TestWorkbook + "_Work.xls"
 Range("a4:a8").Copy
 ActiveWorkbook.Close
 Workbooks.Open Filename:="S:\Result_Workbook.xls"
 Range("l" & 5 + i).PasteSpecial Paste:=xlPasteValues `THE PROBLEM IS HERE
 i = i + 10  
Next
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-26 00:27:23

已修复的几个问题,请参阅评论

代码语言:javascript
运行
复制
Sub a()
 Dim TestWorkbook As Variant
 Dim mytest As Variant
 Dim s As String
 TestWorkbook = Array("test1", "test2", "test3")
 i = 1  'Start with 1
 Workbooks.Open Filename:="S:\Result_Workbook.xls" 'open only once
 For Each mytest In TestWorkbook
     s = mytest & ".xls"
     Workbooks.Open "c:\" & s
     Workbooks(s).Activate 'Remember to Activate
     Range("a4:a8").Copy
     ' Now paste properly
     Workbooks("Result_Workbook.xls").Worksheets("Sheet1").Range("l" & 5 + i).PasteSpecial Paste:=xlPasteValues
     ActiveWorkbook.Close SaveChanges:=False 'close after pasting
     i = i + 10
 Next
 End Sub
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3566825

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档