Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 仅使用公式从带空格的列生成连续列(无VBA)_Excel_Excel Formula - Fatal编程技术网

Excel 仅使用公式从带空格的列生成连续列(无VBA)

Excel 仅使用公式从带空格的列生成连续列(无VBA),excel,excel-formula,Excel,Excel Formula,我有一个专栏: 1Q14 2Q14 3Q14 4Q14 '' '' '' '' h4 j4 k4 m4 我想把它放在B栏: 1Q14 2Q14 3Q14 4Q14 h4 j4 k4 m4 我应该在B列中输入什么才能得到它?使用这个数组公式(Ctrl+Shift+Enter输入这个公式) 在这些情况下,使用SMALL通常优于MATCH。例如,尝试以下方法: =IFERROR(INDEX($A$15:$A$150,SMALL(IF($A$15:$A$150<>"",ROW($A$15

我有一个专栏:

1Q14
2Q14
3Q14
4Q14
''
''
''
''
h4
j4
k4
m4
我想把它放在B栏:

1Q14
2Q14
3Q14
4Q14
h4
j4
k4
m4
我应该在B列中输入什么才能得到它?

使用这个数组公式(Ctrl+Shift+Enter输入这个公式)


在这些情况下,使用
SMALL
通常优于
MATCH
。例如,尝试以下方法:

=IFERROR(INDEX($A$15:$A$150,SMALL(IF($A$15:$A$150<>"",ROW($A$15:$A$150)-ROW($A$15)+1),ROWS($A$15:A15))),"")
=IFERROR(索引($A$15:$A$150),小(如果($A$15:$A$150”),行($A$15:$A$150)-行($A$15)+1),行($A$15:A15)),“”)
在B列的第15行中,将其作为数组公式输入(即按Ctrl+Shift+Enter)


相应地更改范围。

尝试放置“=索引(A15:$A 150,匹配(TRUE,LEN(A15:$A 150)0,0),1)”->找到第一个非空单元格,但我得到一系列重复的h4”,根据您的要求更改范围地址,我假设“如果不是空单元格,则表示空单元格。谢谢Jerry,非常感谢。@LucasSeveryn不客气!嗯,我本想在我的答案中添加其他内容,但在键入公式^^;时忘记了;。您是否对另一种仅涉及复制/粘贴和删除的解决方案感兴趣?@LucasSeveryn好的,没关系:)
=IFERROR(INDEX($A$15:$A$150,SMALL(IF($A$15:$A$150<>"",ROW($A$15:$A$150)-ROW($A$15)+1),ROWS($A$15:A15))),"")