RIGHT 语句嵌套在具有多个逻辑语句的 IF 语句中
RIGHT statement nested within an IF statement with multiple logic statements
我在数据集中有一列包含 17 位产品 ID 的行。前 8 位数字对应产品类型(A、B、C、D)。我正在尝试创建一个新列,其中将包含基于前 8 位数字的相应产品。
如果85161007 = Product A,85677007 = Product B,85648007 = Product C,如何写一个嵌套的IF语句,可以过滤整个列,并在新列上输出产品类型?
Product ID
851610070000003256
856770070000003254
856480070000003896
还有其他方法可以实现。
但是如果我们坚持这个问题:
=IF(LEFT(A1,8)="85161007","PRODUCT A",IF(LEFT(A1,8)="85677007",
"PRODUCT B",IF(LEFT(A9,1)="85648007","PRODUCT C","ELSE")))
请注意,在本例中我比较的是字符串。如果您的数据格式为数字,您将需要比较数字(这意味着删除公式中这些 ID 两边的引号 (")。
正如 BigBen 所说,您必须创建一个查找 table 所有产品及其代码所在的位置,然后您可以使用一个简单的公式找到您需要的名称:
如果 id 是文本:
=INDEX($G:$G,MATCH(LEFT(A2,8),$F:$F,0),0)
或者如果 id 是数字:
=INDEX($G:$G,MATCH(LEFT(A2,8)+0,$F:$F,0),0)
我在数据集中有一列包含 17 位产品 ID 的行。前 8 位数字对应产品类型(A、B、C、D)。我正在尝试创建一个新列,其中将包含基于前 8 位数字的相应产品。
如果85161007 = Product A,85677007 = Product B,85648007 = Product C,如何写一个嵌套的IF语句,可以过滤整个列,并在新列上输出产品类型?
Product ID
851610070000003256
856770070000003254
856480070000003896
还有其他方法可以实现。
但是如果我们坚持这个问题:
=IF(LEFT(A1,8)="85161007","PRODUCT A",IF(LEFT(A1,8)="85677007",
"PRODUCT B",IF(LEFT(A9,1)="85648007","PRODUCT C","ELSE")))
请注意,在本例中我比较的是字符串。如果您的数据格式为数字,您将需要比较数字(这意味着删除公式中这些 ID 两边的引号 (")。
正如 BigBen 所说,您必须创建一个查找 table 所有产品及其代码所在的位置,然后您可以使用一个简单的公式找到您需要的名称:
如果 id 是文本:
=INDEX($G:$G,MATCH(LEFT(A2,8),$F:$F,0),0)
或者如果 id 是数字:
=INDEX($G:$G,MATCH(LEFT(A2,8)+0,$F:$F,0),0)