这是我的excel函数。我不知道如何将IF情感更改为在certian列中不包含0。
试图像在编程语言中一样嵌套它们,但这没有用。
=AG2
& "-"
& D2
& IF(LEN(F2)<=2;F2;"")
& IF(F2="0";"";)
& IF(F2="3XL";"XXXL";)
& IF(F2="4XL";"XXXXL";)
& IF(F2="5XL";"XXXXXL";)
& IF(F2="6XL";"XXXXXXL";)
& IF(F2="XXL";"XXL";"")
我似乎不知道如何发布更简洁的公式。
未编辑:
=AG2 & "-" & D2 & IF(LEN(F2)<=2;F2;"") & IF(F2="0";"";) & IF(F2="3XL";"XXXL";) & IF(F2="4XL";"XXXXL";) & IF(F2="5XL";"XXXXXL";) & IF(F2="6XL";"XXXXXXL";) & IF(F2="XXL";"XXL";"")
答案 0 :(得分:0)
需要将F2长度的条件嵌套到条件中,以查看F2是否为零。
=AG2
&"-"
&D2
&IF(F2="0"; ""; IF(LEN(F2)<=2; F2; ""))
&IF(F2="3XL";"XXXL";)
&IF(F2="4XL";"XXXXL";)
&IF(F2="5XL";"XXXXXL";)
&IF(F2="6XL";"XXXXXXL";)
&IF(F2="XXL";"XXL";"")
答案 1 :(得分:0)
尝试以下
=AG2 & "-" & D2 & IF(F2=0; ""; IF(AND(IFERROR(FIND("XL"; UPPER(F2)); FALSE); ISNUMBER(VALUE(TRIM(SUBSTITUTE(UPPER(F2); "XL"; ""))))); REPT("X"; VALUE(TRIM(SUBSTITUTE(UPPER(F2); "XL"; ""))))&"L"; F2))
要对此进行分解,我们可以分块查看。第一部分很明显
AG2 & "-" & D2
从单元格AG2
和D2
中获取值,并将它们与-
分隔符组合在一起。
下一部分将产生单元格F2
的输出
IF(F2=0; ";
这将测试单元格F2
是否等于0
,如果是,则返回一个空字符串。
我们测试的下一个条件是F2
是否包含XL
,如果存在,则该单元格中是否还有数字。
IFERROR(FIND("XL"; UPPER(F2)); FALSE)
测试F2
的值是否为"XL"
ISNUMBER(VALUE(TRIM(SUBSTITUTE(UPPER(F2); "XL"; ""))))
测试是否也包含数字
如果以上两个条件都返回True
,则公式将字母"X"
重复单元格F2
中数字的次数,并在末尾与"L"
组合< / p>
REPT("X"; VALUE(TRIM(SUBSTITUTE(UPPER(F2); "XL"; ""))))&"L"
例如这将转换
2xl -> XXL
3xl -> XXXL
4xl -> XXXXL
5xl -> XXXXXL
6XL -> XXXXXXL
7XL -> XXXXXXXL
etc.
对于其他任何内容(例如""
,S
,M
,L
,XL
,XXL
等),它将返回那些值未修改。这应该涵盖您上面的所有示例以及更多(如果需要)