使用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
结果:
(A2)John Doe | (B2)纽约| (C2)NY
(A3)Jane Doe | (B3)巴尔的摩| (C3)MD
(A4)玛丽琼斯| (B4)旧金山| (C4)CA(A5)威廉琼斯| (B5)BLANK | (C6)IL
答案 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