如何分配增量数字,但前提是另一列是不同的值
How to assign incremental numbers but only if another column is different value
我正在尝试为我拥有列表的公司分配一个唯一 ID。这些公司有多种产品,因此公司名称出现在多行中。
=ARRAYFORMULA(IF($B2<>"",IF((COUNTIF($B:$B1,$B2)>0),INDEX($A:$R2,MATCH($B2,$B:$B1,0),12),CONCATENATE("C00",ROW($C2))),""))
上述类型的工作,但它会分配 C001,然后它会看到 C 列的行值匹配并跳过,但如果下一个公司名称向下 8 行,它会分配 C009,而不是将 C002 分配给下一个公司。
=ARRAYFORMULA(IF($B2<>"",IF((COUNTIF($B:$B1,$B2)>0),INDEX($A:$R2,MATCH($B2,$B:$B1,0),12),CONCATENATE("RET00",ROW($B2))),""))
我希望每个不同的公司名称都有一个递增的唯一 ID 输入到公司 ID 列行。
这是我的数据和预期结果:
试试这样:
=ARRAYFORMULA(IFERROR(VLOOKUP(B2:B,
{UNIQUE(INDIRECT("B2:B"&COUNTA(B2:B)+1)),
TEXT(ROW(INDIRECT("B1:B"&COUNTUNIQUE(B2:B))), "C0#")}, 2, 0)))
我正在尝试为我拥有列表的公司分配一个唯一 ID。这些公司有多种产品,因此公司名称出现在多行中。
=ARRAYFORMULA(IF($B2<>"",IF((COUNTIF($B:$B1,$B2)>0),INDEX($A:$R2,MATCH($B2,$B:$B1,0),12),CONCATENATE("C00",ROW($C2))),""))
上述类型的工作,但它会分配 C001,然后它会看到 C 列的行值匹配并跳过,但如果下一个公司名称向下 8 行,它会分配 C009,而不是将 C002 分配给下一个公司。
=ARRAYFORMULA(IF($B2<>"",IF((COUNTIF($B:$B1,$B2)>0),INDEX($A:$R2,MATCH($B2,$B:$B1,0),12),CONCATENATE("RET00",ROW($B2))),""))
我希望每个不同的公司名称都有一个递增的唯一 ID 输入到公司 ID 列行。
这是我的数据和预期结果:
试试这样:
=ARRAYFORMULA(IFERROR(VLOOKUP(B2:B,
{UNIQUE(INDIRECT("B2:B"&COUNTA(B2:B)+1)),
TEXT(ROW(INDIRECT("B1:B"&COUNTUNIQUE(B2:B))), "C0#")}, 2, 0)))