MS EXCEL:删除多列中的空(行)行

时间:2017-01-21 03:18:34

标签: excel-formula removeall blank-line

使用MS Excel公式;我想要一个数组公式,它将删除多列中的空行。

不幸的是,与其他类似公式的使用不同(即 = INDEX($ B $ 3:$ B $ 10,SMALL(IF(ISBLANK($ B $ 3:$ B $ 10),“”,ROW($ B $ 3:$ B $ 10)-MIN(行($ B $ 3:$ B $ 10))+ 1),行(A1)))和这些公式一样,只允许从单列中删除空行。然而,我试图获得相同的结果,但是从多行的列中删除空行。

实施例

(A2)John Doe | (B2)纽约| (C2)NY

(A3)BLANK | (B3)BLANK | (C3)BLANK

(A4)Jane Doe | (B4)巴尔的摩| (C4)MD

(A5)BLANK | (B5)BLANK | (C5)BLANK

(A6)玛丽琼斯| (B6)旧金山| (C6)CA

(A7)BLANK | (B7)BLANK | (C7)BLANK

(A8)BLANK | (B8)BLANK | (C8)BLANK

(A9)威廉琼斯| (B9)BLANK | (C9)IL

enter image description here

结果:

(A2)John Doe | (B2)纽约| (C2)NY

(A3)Jane Doe | (B3)巴尔的摩| (C3)MD

(A4)玛丽琼斯| (B4)旧金山| (C4)CA

(A5)威廉琼斯| (B5)BLANK | (C6)IL

enter image description here

1 个答案:

答案 0 :(得分:1)

此功能应该有效:

{=IFERROR(INDEX($A$2:$C$10,MATCH(1,(COUNTIF($E$1:$E1,$A$2:$A$10)=0)*($A$2:$A$10>""),0),COLUMN(A1)),"")}

请注意,此公式仅在A列中没有重复项时才有效。此外,空白单元格(如示例中的B5)将填充0.您可以使用IF删除它们式:

{=IFERROR(IF(INDEX($A$2:$C$10,MATCH(1,(COUNTIF($E$1:$E1,$A$2:$A$10)=0)*($A$2:$A$10>""),0),COLUMN(A1))>0,INDEX($A$2:$C$10,MATCH(1,(COUNTIF($E$1:$E1,$A$2:$A$10)=0)*($A$2:$A$10>""),0),COLUMN(A1)),""),"")}

复制到E2并向下拖动然后向右。不要忘记输入CTRL + SHIFT + ENTER