2016-11-07 42 views
0

我需要你在下面我有批号某列如下俱乐部类似的代码

COL A 
SFF123 
SFF123+124 
Sff123+124 
SFF124+125 
SFF125+126+127 
SFF127+128 
SFF128 
SFF128+GHI345 
GHI345+346 
GHI346 

我只需要在列B中的唯一值如下

COL B 
SFF123 
SFF124 
SFF125 
SFF126 
SFF127 
SFF128 
GHI345 
GHI346 

在其他帮助如果在相应行中只有单个值,那么公式应该返回该值。如果有两个或更多个值,则它应该返回在前一行中未重复的代码。

感谢您的帮助

+1

假设SFF123 + 124是指SFF123和SFF124是否安全?你是否只擅长Excel,还是开放给VBA? –

+0

@ L.Dutch是的,您的假设是真实的,我向Vba开放 –

回答

0

下面将为你只有唯一的字符串,而是分散到3列。

enter image description here

设置以下公式:

在B2 =IF(MID(A2,7,1)<>"",1,0)将检查你的字符串中有超过6个字符

在C2 =IF(B2=1,IFERROR(VALUE(MID(A2,8,3)),"text"),"")将检查如果超过6个字符是唯一的数字或文字和数字

在D2 =IF(MID(A2,11,1)<>"",1,0)将检查您的字符串是否有超过10个字符

在E2 =MID(A2,1,6)将返回第一串

在F2 =IF(C2="text",MID(A2,8,6),IF(ISNUMBER(C2),CONCATENATE(MID(A2,1,3),TEXT(C2,0)),""))将返回第二串

在G2 =IF(AND(D2=1,C2<>"text"),CONCATENATE(MID(A2,1,3),TEXT(MID(A2,12,3),0)),"")将返回第三串

在H2 =IF(COUNTIF(E$2:G2,E2)=1,E2,"")并将其扩展到I和J.这将显示所有独特的字符串。

+0

感谢您的努力@ L,荷兰语。但我怎么能达到预期的结果基于你上面的分析 –

+0

我试图设置一个公式,连接字符和三重态的所有第一次出现。由于我不知道你的真实数据是怎么样的,我所有的尝试都是依赖于例子。 –

+0

我可以与你分享我的数据。我有近750个条目。有没有其他办法可以与你分享文件? –