Page 1 of 1

ต้องการหาข้อมูลเพิ่มลด

Posted: Fri Oct 30, 2015 3:16 pm
by aj235228
ต้องการหาข้อมูลเพิ่มลด จากการเปรียบเทียบ 2 คอลัมน์นี้ครับ
ตัวอย่างที่ยกมาเป็น ID ครับ
ข้อมูลที่ผมทำเป็นพันๆรายการ รบกวนพี่ๆช่วยด้วยครับ ว่าต้องใช้สูตรอะไร

Re: ต้องการหาข้อมูลเพิ่มลด

Posted: Fri Oct 30, 2015 6:55 pm
by snasui
:D ต้องการให้แสดงผลลัพธ์ที่ชีตใด เซลล์ใดครับ

Re: ต้องการหาข้อมูลเพิ่มลด

Posted: Fri Oct 30, 2015 8:02 pm
by aj235228
ที่คอลัมน์ c

Re: ต้องการหาข้อมูลเพิ่มลด

Posted: Fri Oct 30, 2015 8:19 pm
by snasui
:D ควรนำข้อมูลมาต่อกันแล้วเพิ่มคอลัมน์ที่ระบุว่าชุดใดเป็นข้อมูลใด จากนั้นค่อยทำเป็น PivotTable ตามไฟล์แนบ

หากใช้สูตรจะยากมาก ไม่เหมาะสำหรับมือใหม่ ดูตัวอย่างสูตรได้ที่นี่ครับ wordpress/compare-data-with-formula/

Re: ต้องการหาข้อมูลเพิ่มลด

Posted: Fri Oct 30, 2015 9:15 pm
by aj235228
ขอบคุณครับ

Re: ต้องการหาข้อมูลเพิ่มลด

Posted: Sat Oct 31, 2015 1:20 am
by primevalm
หากข้อมูลที่จะนำมาเปรียบเทียบกัน มีแค่ 2 คอลัมน์ และเป็นตัวเลขทั้งหมด
ลองใช้สูตรนี้ดูก็ได้ครับ

D2
=LARGE(INDEX(B2:B26*ISNA(MATCH(B2:B26,A2:A26,0)),),ROW(A1))
Enter คัดลอกลง

E2
=LARGE(INDEX(A2:A26*ISNA(MATCH(A2:A26,B2:B26,0)),),ROW(A1))
Enter คัดลอกลง

(ข้อมูลจะเรียงลำดับจากมากไปหาน้อย)

Re: ต้องการหาข้อมูลเพิ่มลด

Posted: Sat Oct 31, 2015 6:15 am
by snasui
primevalm wrote:หากข้อมูลที่จะนำมาเปรียบเทียบกัน มีแค่ 2 คอลัมน์ และเป็นตัวเลขทั้งหมด
ลองใช้สูตรนี้ดูก็ได้ครับ

D2
=LARGE(INDEX(B2:B26*ISNA(MATCH(B2:B26,A2:A26,0)),),ROW(A1))
Enter คัดลอกลง

E2
=LARGE(INDEX(A2:A26*ISNA(MATCH(A2:A26,B2:B26,0)),),ROW(A1))
Enter คัดลอกลง

(ข้อมูลจะเรียงลำดับจากมากไปหาน้อย)
:D สูตรลักษณะนี้ควรปรับให้รองรับกับข้อมูลที่ไม่ได้มีการจัดเรียงจากน้อยไปหามากเสมอไป จึงควรที่จะ Lock เซลล์ไม่ให้ Dynamic ไปตามบรรทัดที่ Copy ลงด้านล่าง นอกจากนี้ในการ Run ลำดับควรใช้ Rows($A1:A1) แทน Row(A1) เนื่องจากมีความมั่นคงต่อการแทรกและลบบรรทัดก่อนบรรทัดข้อมูลครับ

Re: ต้องการหาข้อมูลเพิ่มลด

Posted: Sat Oct 31, 2015 10:33 pm
by primevalm
snasui wrote:
primevalm wrote:หากข้อมูลที่จะนำมาเปรียบเทียบกัน มีแค่ 2 คอลัมน์ และเป็นตัวเลขทั้งหมด
ลองใช้สูตรนี้ดูก็ได้ครับ

D2
=LARGE(INDEX(B2:B26*ISNA(MATCH(B2:B26,A2:A26,0)),),ROW(A1))
Enter คัดลอกลง

E2
=LARGE(INDEX(A2:A26*ISNA(MATCH(A2:A26,B2:B26,0)),),ROW(A1))
Enter คัดลอกลง

(ข้อมูลจะเรียงลำดับจากมากไปหาน้อย)
:D สูตรลักษณะนี้ควรปรับให้รองรับกับข้อมูลที่ไม่ได้มีการจัดเรียงจากน้อยไปหามากเสมอไป จึงควรที่จะ Lock เซลล์ไม่ให้ Dynamic ไปตามบรรทัดที่ Copy ลงด้านล่าง นอกจากนี้ในการ Run ลำดับควรใช้ Rows($A1:A1) แทน Row(A1) เนื่องจากมีความมั่นคงต่อการแทรกและลบบรรทัดก่อนบรรทัดข้อมูลครับ
ขอบคุณครับอาจารย์ ผมลืม Lock จริง ๆ ด้วย :D