excel中如何将多列竖排长数据每几行一组变成多行横排?

如图... 如图 展开
 我来答
柔软的Bp
科技发烧友

2021-03-14 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:3万
采纳率:66%
帮助的人:8982万
展开全部

用编程也可以哟

D1=IF(ROW(A1)>6,"",INDEX($A$1:$B$500,ROW(A1),COLUMN(A1)))

右拉,到E1,再下拉

同理

F1=IF(ROW(C1)>6,"",INDEX($A$1:$B$500,MATCH($D1,$A:$A,)+6,COLUMN(A1)))

依次显示A,B列的1-6行

然后 MATCH($D1,$A:$A,)+6,依次根据D列数据+6,就是FG列结果

追问

请问大佬,这种比较多且很长的数据,具体应该输入怎样的公式或代码呢

追答

要用编程

无论行数个数是否一致,都可以

Sub aa()

Dim i, k, x

For i = 2 To Range("a65536").End(xlUp).Row

    x = WorksheetFunction.CountIf(Range(Cells(1, 1), Cells(i, 1)), Cells(i, 1))

    If x = 1 Then

     y = WorksheetFunction.CountIf(Range("a:a"), Cells(i, 1))

     Z = WorksheetFunction.CountA(Range("l2:cz2"))

     Range(Cells(i, 1), Cells(y + i - 1, "j")).Select

     Range(Cells(i, 1), Cells(y + i - 1, "j")).Copy Cells(2, Z + 12)

     End If

     Next

End Sub

百度网友24ef169fc
2021-03-13 · TA获得超过9082个赞
知道大有可为答主
回答量:2.2万
采纳率:63%
帮助的人:4386万
展开全部
d1=INDEX($A:$B,MOD(ROW(A1)-1,6)+ROUNDUP(COLUMN(A1)/2,0)*6-5,MOD(COLUMN(A1)-1,2)+1)右拉下拉
追问

请问大佬,这种比较多且很长的数据,具体应该输入怎样的公式或代码呢

追答
图片看不清,把问题作为内容(游舰主题一定要包含“excel”,本人以此为依据辨别非垃圾游舰,以免误删),excel样表文件(尽量详细说明现状和目标效果)作为附件发到一流3油香:yqch134帮你看下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式