没有自定义宏的Excel条件替换

时间:2014-12-15 10:10:55

标签: excel excel-formula excel-2010

有没有办法处理以下A列以使用Excel IF语句(或其他但最好不是自定义宏,我希望只有一个公式)来获取列B来获取

A        B
X        X
_EMPTY   custom_row3
Y        Y
_EMPTY   custom_row5
Z        Z

在伪代码中

 FOREACH ROW
 IF (A!='_EMPTY) 
    B=A
ELSE 
    B='custom_row'+$ROWNUM$
END

我检查了相关问题How to replace text of a cell based on condition in excel,但目前尚不清楚如何扩展到这种情况有点复杂。

1 个答案:

答案 0 :(得分:0)

你可以在B2中使用

=IF(ISBLANK(A2),"custom_row"&+ROW(),A2)

并向下复制。 请注意非常重要点。 空单元格的行为与包含空字符串的单元格的行为不同。 参考该图,单元格A3和A6是空的(空白),而单元格A5包含空字符串。

enter image description here

您可能需要使用

=IF(OR(ISBLANK(A2),A2=""),"custom_row"&+ROW(),A2)

取决于您的列A的内容。 请参阅this relevant answer