我需要Excel在匹配多个列方面的帮助(这里有3列),如果值是唯一的,或者是一式两份或一式三份的,以及它们所在的列,则将代码分配给值。为了更清楚地说明,我提供了一个例子和守则如下:
| A | B | C | D | E |
| 11| 22| 22| 11| |
| 22| 44| 11| 22| |
| 33| 77| 33| 33| |
| 44| 99| 88| 44| |
| 55| 33| 99| 55| |
| 66| | | 66| |
| | | | 77| |
| | | | 88| |
| | | | 99| | 数据的总体描述是,列A、B和C包含数据,而D列包含列A、B和C.I E列的所有唯一值,我希望根据它们在列类型中的出现情况以及发生的次数来编写唯一值的代码。如果条件和代码如下:
如果A、B和C列中都有值,则代码"T“
如果值出现在A和B列中,则编码为"U“
如果值出现在A和C列中,则代码"V“
如果值出现在B和C列中,则编码"W“
如果值仅存在于A中,则代码为"X“
如果值仅存在于B中,则代码为"Y“
如果值仅存在于C中,则代码为"Z“
因此,代码应该在E栏中,预期的输出应该如下所示:
| A | B | C | D | E |
| 11| 22| 22| 11| V|
| 22| 44| 11| 22| T|
| 33| 77| 33| 33| T|
| 44| 99| 88| 44| U|
| 55| 33| 99| 55| X|
| 66| | | 66| X|
| | | | 77| Y|
| | | | 88| Z|
| | | | 99| W| 我尝试在Excel-2010中使用嵌套的if with,而不是Excel-2010中的条件,但是没有结果。我有大量的数据需要计算,因此无法手动完成。
请帮我解决这个问题。
提前感谢你。
阿沙拉塔
发布于 2017-05-23 10:14:23
另一个很长的公式:
=IF(ISNUMBER(MATCH(D1,$A$1:$A$10,0))=TRUE,IF(ISNUMBER(MATCH(D1,$B$1:$B$10,0))=TRUE,IF(ISNUMBER(MATCH(D1,$C$1:$C$10,0))=TRUE,"T","U"),IF(ISNUMBER(MATCH(D1,$C$1:$C$10,0))=TRUE,"V","X")),IF(ISNUMBER(MATCH(D1,$B$1:$B$10,0))=TRUE,IF(ISNUMBER(MATCH(D1,$C$1:$C$10,0))=TRUE,"W","Y"),IF(ISNUMBER(MATCH(D1,$C$1:$C$10,0))=TRUE,"Z","")))根据需要拖动/复制,并根据数据更改范围。
参考见图像

发布于 2017-05-23 10:07:31
很长的公式。我相信一定有更简单的方法:
=IF(AND(IFERROR(MATCH(D1,A:A,0),0)<>0,IFERROR(MATCH(D1,B:B,0),0)<>0,IFERROR(MATCH(D1,C:C,0),0)<>0)=TRUE,"T",IF(AND(IFERROR(MATCH(D1,A:A,0),0)<>0,IFERROR(MATCH(D1,B:B,0),0)<>0,IFERROR(MATCH(D1,C:C,0),0)=0)=TRUE,"U",IF(AND(IFERROR(MATCH(D1,A:A,0),0)<>0,IFERROR(MATCH(D1,B:B,0),0)<=0,IFERROR(MATCH(D1,C:C,0),0)<>0)=TRUE,"V",IF(AND(IFERROR(MATCH(D1,A:A,0),0)=0,IFERROR(MATCH(D1,B:B,0),0)<>0,IFERROR(MATCH(D1,C:C,0),0)<>0)=TRUE,"W",IF(AND(IFERROR(MATCH(D1,A:A,0),0)<>0,IFERROR(MATCH(D1,B:B,0),0)=0,IFERROR(MATCH(D1,C:C,0),0)=0)=TRUE,"X",IF(AND(IFERROR(MATCH(D1,A:A,0),0)=0,IFERROR(MATCH(D1,B:B,0),0)<>0,IFERROR(MATCH(D1,C:C,0),0)=0)=TRUE,"Y",IF(AND(IFERROR(MATCH(D1,A:A,0),0)=0,IFERROR(MATCH(D1,B:B,0),0)=0,IFERROR(MATCH(D1,C:C,0),0)<>0)=TRUE,"Z","")))))))https://stackoverflow.com/questions/44130587
复制相似问题