วิธีรับค่าที่ไม่ซ้ำจากเซลล์ที่ทำซ้ำหลายครั้งใน Excel

สวัสดี ฉันมีข้อมูลผู้สมัครประมาณ 50,000 ราย และคอลัมน์หนึ่งมีหัวข้อดังนี้

คอลัมน์ A สำหรับตัวอย่าง ฉันต้องการสูตรในคอลัมน์ B เพื่อรับค่าที่ไม่ซ้ำจากคอลัมน์ A หากค่าทั้งหมดใน "," เหมือนกัน ฉันต้องใช้ค่าเดียว มิฉะนั้นจะเป็นข้อมูลเซลล์ทั้งหมด (มี อาจเป็นรายการที่คั่นด้วยเครื่องหมายจุลภาคหลายรายการ)

ฉันลองใช้สูตร find แล้ว แต่ใช้งานไม่ได้

ขอบคุณล่วงหน้า.


person Shrikant    schedule 09.08.2017    source แหล่งที่มา
comment
ดังนั้นรายการในคอลัมน์ A จึงประกอบด้วยรายการที่คั่นด้วยเครื่องหมายจุลภาค 3 รายการเสมอ ถ้าไม่เช่นนั้น ขอแนะนำให้คุณแก้ไขตัวอย่างของคุณเพื่อให้สมจริงยิ่งขึ้น   -  person XOR LX    schedule 09.08.2017
comment
@XORLX - ฉันได้แก้ไขคำถามของฉันแล้วและมีรายการที่คั่นด้วยเครื่องหมายจุลภาคมากกว่า 3 รายการเช่นกัน   -  person Shrikant    schedule 09.08.2017


คำตอบ (2)


วิธีนี้จะใช้ได้กับรายการที่คั่นด้วยเครื่องหมายจุลภาคจำนวนเท่าใดก็ได้:

=IF(REPT(LEFT(A2,FIND(",",A2&",")),1+LEN(A2)-LEN(SUBSTITUTE(A2,",","")))=A2&",",LEFT(A2,FIND(",",A2)-1),A2)

ความนับถือ

person XOR LX    schedule 09.08.2017
comment
ขอขอบคุณที่เพิ่ม REPT() ลงในไลบรารีฟังก์ชันของฉัน... +1 - person Glitch_Doctor; 09.08.2017
comment
@Glitch_Doctor ยินดีต้อนรับ! ฟังก์ชั่นเล็กๆ น้อยๆ ที่มีประโยชน์ในบางครั้ง - person XOR LX; 09.08.2017

ค่อนข้างยุ่งเหยิง แต่สิ่งนี้จะได้ผล:

=IF(ISNUMBER(SEARCH(MID($A2,1,SEARCH(",",$A2,1)-1),$A2,LEN(MID($A2,1,SEARCH(",",$A2,1)-1)))),IF(ISNUMBER(SEARCH(MID($A2,1,SEARCH(",",$A2,1)-1),$A2,LEN(MID($A2,1,SEARCH(",",$A2,1)-1))*2)),MID($A2,1,SEARCH(",",$A2,1)-1),$A2),$A2)

หากการค้นหาพบคำแรกเกินความยาวของคำนั้นอีกครั้ง ระบบจะตรวจสอบอีกครั้งว่าเกินความยาวสองเท่า หากตรงกัน ระบบจะส่งกลับเพียงคำนั้น มิฉะนั้นจะส่งคืนทั้งเซลล์

ฉันจะพยายามหาวิธีแก้ปัญหาที่หรูหรากว่านี้ต่อไป แต่ตอนนี้ก็จะทำได้ หากคุณทำไม่ได้ฉันก็ยังสามารถทำได้ แต่ต้องการใช้คอลัมน์ตัวช่วย (หรือมีรอยแตกที่ VBA ซึ่งขึ้นอยู่กับงานได้ง่ายฉันไม่ต้องการเห็น พยายามก่อนแม้ว่าฉันจะไม่เขียนโค้ดฟรีตามกฎทั่วไป)

person Glitch_Doctor    schedule 09.08.2017