基于两列创建新的唯一ID - Excel

时间:2017-02-06 16:04:16

标签: excel excel-indirect excel-match

我在工作中遇到问题,我们会使用旧的SKU编号并将其替换为新的SKU编号。不幸的是,有些情况下,替换旧SKU号码的新SKU号码最终将成为“旧”SKU本身并将逐步淘汰。以下是一个例子。

$(document).ready(function(){
    $("#addItem").click(function(){
        $("#addrow").append("<li>Appended item test</li>");
    });
});

按照我需要格式化工作的方式,我需要三个不同的SKU才能成为1个独特的SKU,所以06223,34162和51095将等于新的SKU#12345。

这就是我需要的样子

    Old Sku   New SKU
    06223     34162
    06223     34162
    06553     01925
    06557     19100
    06557     19100
    06573     11443
    06573     11443
    51095     06223
    51095     06223

我对间接功能不太熟悉,但有人告诉我可能需要使用它。我感谢所有的帮助。谢谢!

编辑 @CallumDA这是我用你的代码获得的

    Old Sku New SKU Unique SKU
    06223   34162   1
    06223   34162   1
    06223   34162   1
    06553   01925   2
    06557   19100   3
    06557   19100   3
    06573   11443   4
    06573   11443   4
    51095   06223   1
    51095   06223   1

第2行和第3行应该在全新的sku中有2个

1 个答案:

答案 0 :(得分:2)

将此公式放入C2并向下拖动

=IFERROR(VLOOKUP(IFERROR(VLOOKUP(B3,$A$1:$B1,2,0),B2),$B$1:$C1,2,0),MAX($C$1:C1)+1)

看起来像这样:
sku

正如我在评论中所建议的那样,您可能也可以使用更简单的解决方案:

=IFERROR(VLOOKUP(B2,$A$2:$B$11,2,0),B2)

这只是获得最新的新SKU - 如下所示:(在“备选”栏中)

enter image description here

<强>更新

由于您更新了数据,因此您拥有一对多关系以及多对一。这是更新的方法和公式。 我为此方案更改了单元格B3中的值,并将其拆分为两列以方便:

enter image description here

D2中的公式为:

=VLOOKUP(INDEX($A$2:$A$11,MATCH(IFERROR(VLOOKUP(B2,$A$2:$B$11,2,0),B2),$B$2:$B$11,0)),$A$2:$B$11,2,0)

同样E2是:

=IFERROR(VLOOKUP(D2,$D$1:$E1,2,0),MAX($E$1:E1)+1)

您的更新数据现在如下所示:

enter image description here