找回密码
 立即注册
搜索

excel如何把前面区域内非空值按顺序整理到一列

8
回复
264
查看
[复制链接]

1

主题

5

帖子

1

幻币

初入江湖

Rank: 1

积分
4
2021-10-19 10:56:00 显示全部楼层 |阅读模式
excel表前面几列区域内有非空值和空值,如何用公式把前面这块区域内的非空值都整理到到一列。如图前4列内容

9d5dd8e16a846465520376a580869da8.png
PPT学习论坛
回复

使用道具 举报

0

主题

6

帖子

0

幻币

初入江湖

Rank: 1

积分
6
2021-10-24 05:22:05 显示全部楼层
1c5056414406be6540c206e19dd88067.png
=IFERROR(INDEX(EVALUATE("{"&TEXTJOIN(",",1,TRANSPOSE($A$2:$D$18))&"}"),ROW(A1)),"")
PPT学习论坛
回复 支持 反对

使用道具 举报

1

主题

4

帖子

2

幻币

初入江湖

Rank: 1

积分
6
2021-11-5 20:37:47 显示全部楼层
提示该函数无效,确定后EVALUATE被选定,麻烦大佬指教一下
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

6

帖子

-1

幻币

初入江湖

Rank: 1

积分
4
2021-11-19 23:31:07 显示全部楼层
提示该函数无效,确定后EVALUATE被选定,麻烦大佬指教一下
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

4

帖子

-3

幻币

东方不败

积分
-5
2021-12-11 20:39:21 显示全部楼层
可以试试PQ,2016版就可以
=List.RemoveNulls(List.Combine(Table.ToColumns(源)))
PPT学习论坛
回复 支持 反对

使用道具 举报

1

主题

5

帖子

2

幻币

初入江湖

Rank: 1

积分
9
2021-12-12 21:07:13 显示全部楼层
EVALUATEWPS能直接使用,EXCEL的话将EVALUATE("{"&TEXTJOIN(",",1,TRANSPOSE($A$2:$D$18))&"}") 这部分定义名称即可!
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

6

帖子

-1

幻币

初入江湖

Rank: 1

积分
4
2021-12-14 05:46:07 显示全部楼层
上传附件可以快速得到解决。
附上论坛前辈的公式:
=INDIRECT(TEXT(MOD(SMALL(IF($A$2:$D$20<>"",ROW($A$2:$D$20)*100+COLUMN($A$2:$D$20)*10^4+COLUMN($A$2:$D$20)),ROW(A1)),10^4),"r0c00"),)&""
数组三键,下拉至错误值,区域自行修改。
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

7

帖子

0

幻币

初入江湖

Rank: 1

积分
7
2022-1-11 04:07:08 显示全部楼层
=small(区域,row(1:1)) 下拉 试试?
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

幻币

初入江湖

Rank: 1

积分
4
2022-1-26 21:26:33 显示全部楼层
{=INDIRECT(TEXT(RIGHT(SMALL(IF(A$2:D$20<>"",ROW($2:$20)*100+{1,2,3,4}*10001,"1E9"+199),ROW(A1)),4),"!r0c00"),)&""
PPT学习论坛
回复 支持 反对

使用道具 举报

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