:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

พอมีวิธีนำข้อมูลที่ไม่ซ้ำกันมาเรียงต่อกันไหมครับ

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Edelbroy
Member
Member
Posts: 22
Joined: Wed May 15, 2013 4:47 pm

พอมีวิธีนำข้อมูลที่ไม่ซ้ำกันมาเรียงต่อกันไหมครับ

#1

Post by Edelbroy »

ผมต้องการนำข้อมูล C3:N4 ไปเรียงต่อกันที่ B3:B12 โดยที่ข้อมูลไม่ซ้ำกัน จะต้องทำยังครับ ขอบคุณครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: พอมีวิธีนำข้อมูลที่ไม่ซ้ำกันมาเรียงต่อกันไหมครับ

#2

Post by snasui »

:D ลองตามนี้ครับ
  1. ใช้พื้นที่สำหรับคลี่ข้อมูลออกมาก่อนเพื่อให้ง่ายต่อการใช้สูตรหา Unique Record โดยคียสูตรที่ C6 เป็น
    =INDEX($C$3:$N$4,INT((ROWS(C$6:C6)-1)/COUNT($C$3:$N$3))+1,MOD((ROWS(C$6:C6)-1),COUNT($C$3:$N$3))+1)
    Enter > Copy ลงด้านล่าง
  2. หา Unique Record โดยคีย์สูตรที่ B3 เป็น
    =IFERROR(INDEX($C$6:$C$45,SMALL(IF(FREQUENCY(IF(ISNUMBER($C$6:$C$45),MATCH($C$6:$C$45,$C$6:$C$45,0)),ROW($C$6:$C$45)-ROW($C$6)+1),ROW($C$6:$C$45)-ROW($C$6)+1),ROWS(B$3:B3))),"")
    Ctrl+Shift+Enter > Copy ลงด้านล่าง

!
Note: Ctrl+Shift+Enter หมายถึงเมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้คีย์เข้าไปเองไม่ได้ ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง
Edelbroy
Member
Member
Posts: 22
Joined: Wed May 15, 2013 4:47 pm

Re: พอมีวิธีนำข้อมูลที่ไม่ซ้ำกันมาเรียงต่อกันไหมครับ

#3

Post by Edelbroy »

ขอบคุณสำหรับคำตอบครับ ทำได้แล้ววว เย้ :thup:

แต่รบกวนอีกหน่อยครับ ถ้าชุดข้อมูลไม่ใช้ตัวเลขอย่างเดียวแต่มีตัว A-Z a-z และ . - รวมอยู่ในชุดข้อมูลด้วย เช่น A10.00-10 แบบนี้อะครับ จะต้องเขียนสูตรยังไงครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: พอมีวิธีนำข้อมูลที่ไม่ซ้ำกันมาเรียงต่อกันไหมครับ

#4

Post by snasui »

:D ได้ลองทำตามสูตรที่ผมแนะนำไปแล้วยังครับ :?:
Edelbroy
Member
Member
Posts: 22
Joined: Wed May 15, 2013 4:47 pm

Re: พอมีวิธีนำข้อมูลที่ไม่ซ้ำกันมาเรียงต่อกันไหมครับ

#5

Post by Edelbroy »

ลองทำดูแล้วครับตัวเลขขึ้นตามที่ต้องการเลย เรียงกันโดยที่ข้อมูลไม่ซ้ำกัน :D แต่พอลองใส่ ตัวอักษรผสมกับตัวเลข :geek:
พบว่าสูตรที่ 1 ขึ้น แต่ว่า ข้อมูลอันสุดท้ายจะหายไป เปลี่ยนเป็น !#REF ไล่ตั้งแต่ล่างขึ้นมาบน
สูตรที่ 2 ข้อมูลที่เป็นตัวเลขขึ้น แต่ข้อมูลที่เป็น ตัวอักษรไม่ขึ้น
ผมเลขอยากถามว่า ถ้าจะให้ข้อมูลมีตัวอักษรผสมอยู่ขึ้นด้วย จะต้องเขียนสูตรยังไงครับ :D
Edelbroy
Member
Member
Posts: 22
Joined: Wed May 15, 2013 4:47 pm

Re: พอมีวิธีนำข้อมูลที่ไม่ซ้ำกันมาเรียงต่อกันไหมครับ

#6

Post by Edelbroy »

ผมลองแก้สูตรที่ 1 ดู เปลี่ยนจาก COUNT เป็น COUNTA =INDEX($C$3:$N$4,INT((ROWS(C$6:C6)-1)/COUNTA($C$3:$N$3))+1,MOD((ROWS(C$6:C6)-1),COUNTA($C$3:$N$3))+1) ใช้ได้แล้วครับไม่ขึ้นเป็น !#REF แล้ว ;)

แต่สูตรที่ 2 ทำไม่ได้ :cry:
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: พอมีวิธีนำข้อมูลที่ไม่ซ้ำกันมาเรียงต่อกันไหมครับ

#7

Post by snasui »

:D สูตรที่ 2 ลองปรับเป็นตามด้านล่างครับ

=IFERROR(INDEX($C$6:$C$45,SMALL(IF(FREQUENCY(IF(1-ISERR($C$6:$C$45),MATCH($C$6:$C$45,$C$6:$C$45,0)),ROW($C$6:$C$45)-ROW($C$6)+1),ROW($C$6:$C$45)-ROW($C$6)+1),ROWS(B$3:B3))),"")
Post Reply