Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2016|回复: 5

多单元格多列跨表复制

[复制链接]
发表于 2019-11-3 22:14 | 显示全部楼层 |阅读模式
本帖最后由 maydbl 于 2019-11-4 21:50 编辑

各位老师晚上好!白天也好!
1、sheet1的a1:d20是基本范围,a21:d40结构与a1:d20相同,20行一个循环,有n个循环。
2、需把sheet2的B、D列第二行起的数值单元格复制依次到sheet1的D、B列指定位置(见表内示意)。

谢谢!
01.jpg

多单元格多列跨表复制.rar

16.41 KB, 下载次数: 7

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2019-11-3 23:43 | 显示全部楼层
如果 都是隔6行的话
b5   =INDIRECT("sheet2!D"&INT((ROW(A1)+13)/7))
选中 B5:B11 , 下拉

但你表中 B19 , B25 直接 是空5行 , 这样就不知道 规律了.
回复

使用道具 举报

发表于 2019-11-4 05:44 | 显示全部楼层
B1 公式:
=IF(
MOD(MOD(ROW(),20)-5,7),"",
INDEX(Sheet2!D:D,INT(ROW()/20)*3+INT(MOD(ROW(),20)/5)+1)
)

D1 公式:
=IF(
MOD(MOD(ROW(),20)-4,7),"",
INDEX(Sheet2!B:B,INT(ROW()/20)*3+INT(MOD(ROW()+1,20)/5)+1)
)

※如果有解決您的問題,再請將帖子設為[已解決]

祝順心,南無阿彌陀佛!

log.png

Book1.rar

20.1 KB, 下载次数: 2

回复

使用道具 举报

 楼主| 发表于 2019-11-4 08:15 | 显示全部楼层
感谢楼上2位的回复!sheet1的a1:d20是基本范围,a21:d40结构与a1:d20相同,20行一个循环,有n个循环。有个情况我忘了表述,对不起:绿色部分是其他内容。用公式法不行。
回复

使用道具 举报

发表于 2019-11-4 11:19 | 显示全部楼层
本帖最后由 爱疯 于 2019-11-4 11:21 编辑

Sub test()
    Dim i
    Sheets(2).Select
    i = Range("d65536").End(xlUp).Row - 1
    Call test2([b2].Resize(i).Value, Array(4, 11, 18), 2, 4)

    Sheets(2).Select
    Call test2([d2].Resize(i).Value, Array(5, 12, 19), 4, 2)
End Sub


'某列(源数据, 源位置, 源列,  目的列 )
Sub test2(B, C, c1, c2)
    Dim m, n, A, i, j, s, t
    m = 20
    n = Int(UBound(B) / 3) + 1
    Sheets(1).Select
    A = Cells(1, c2).Resize(m * n)
    For i = 1 To UBound(B)
        For j = 0 To UBound(C)
            s = s + 1
            t = (i - 1) * m + C(j)
            If s <= UBound(B) Then A(t, 1) = B(s, 1)
        Next j
    Next i
    Cells(1, c2).Resize(UBound(A)) = A
End Sub

回复

使用道具 举报

 楼主| 发表于 2019-11-4 21:50 | 显示全部楼层
感谢 爱疯 超级版主!太感谢了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-20 07:54 , Processed in 0.294269 second(s), 6 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表