用宏处理Excel复制粘贴的问题

Singal 2010-02-25 03:26:48
实现目的:
有3个表,表的结构相同,我想把这三个表合成1个表,依次把3个表的每个行复制到新表中,也就是新表的前三行是前面3个表的第一行数据,下面三行是前3个表的第二行,依次类推,因为行数和列数都比较多,只能用宏来实现。请问怎么编写?
例如:
sheet1
A1
A2
sheet2
B1
B2
sheet3
C1
C2

sheet4应该是
A1
B1
C1
A2
B2
C2


应该比较简单哈,请高手尽快帮我解答,谢谢,注意列数较多
...全文
448 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
cphj 2010-03-02
  • 打赏
  • 举报
回复
楼主态度应该更诚恳一点,否则别人没有热情帮你
Singal 2010-02-27
  • 打赏
  • 举报
回复
测试成功没有啊?好了,我就结分了
Singal 2010-02-27
  • 打赏
  • 举报
回复
有3个表,表的结构相同,我想把这三个表合成1个表,依次把3个表的每个行复制到新表中,也就是新表的前三行是前面3个表的第一行数据,下面三行是前3个表的第二行,依次类推,因为行数和列数都比较多,只能用宏来实现。请问怎么编写?


我写了阿
laoyebin 2010-02-27
  • 打赏
  • 举报
回复
多列?
怎么一开始不说?按行还是按列顺序?

什么都不说清楚,没人能帮你
Singal 2010-02-27
  • 打赏
  • 举报
回复
已经测试过你的代码了,可以,不过我需要复制的是多列数据,你的只能完成1列的处理,代码该怎么改?
Singal 2010-02-27
  • 打赏
  • 举报
回复
没有测试成功,能不能把你的测试文件发给我?wujing1dai@tom.com,谢谢啦
laoyebin 2010-02-25
  • 打赏
  • 举报
回复
你试一下不就行了么
我就是在2007版里做的
Singal 2010-02-25
  • 打赏
  • 举报
回复
excel2007里面也是这样用吧?
laoyebin 2010-02-25
  • 打赏
  • 举报
回复
当然,你按你的习惯给它赋值也不要紧的
laoyebin 2010-02-25
  • 打赏
  • 举报
回复
VBA不是C#,K初始值为0
Singal 2010-02-25
  • 打赏
  • 举报
回复
k不需要定义初始值吗?
laoyebin 2010-02-25
  • 打赏
  • 举报
回复

Sub test()
Dim arr, i%, j&, k&
ReDim arr(1 To Sheets(1).[a1].CurrentRegion.Rows.Count * 3)

For j = 1 To UBound(arr) / 3
For i = 1 To 3
k = k + 1
arr(k) = Sheets(i).Cells(j, 1)
Next
Next

Sheets(4).[a1].Resize(k) = WorksheetFunction.Transpose(arr)
End Sub

6,210

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office应用
社区管理员
  • Microsoft Office应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧