: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

การแสดงผล โดยค่าไม่ซ้ำ

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

การแสดงผล โดยค่าไม่ซ้ำ

#1

Post by saynam »

ขอสอบถามครับ

มีข้อมูลแบบนี้

01
02
01
02
02
02

อยากให้แสดงในคอลัมน์ใหม่

01
02

ต้องทำอย่างไรครับ ทำมาหลายวันตอนนี้จนปัญญาแล้วครับ
akung
Member
Member
Posts: 159
Joined: Sun Mar 11, 2012 10:20 am

Re: การแสดงผล โดยค่าไม่ซ้ำ

#2

Post by akung »

1. ใส่หัวให้ข้อมูลก่อน เช่น รหัสลูกค้า
2. ไปที่ Data>Filter>Advance Filter
3. เลือก Copy to another location
4. List range : ให้เลือกข้อมูลที่ต้องการทำ
5. Copy to: ให้เลือก Cell ที่ต้องการแสดงผลลัพธ์ สมมุติเลือก D1
6. ให้ติ๊กถูกที่ช่อง Unique records only
7. กด Ok เป็นอันเสร็จสิ้น
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#3

Post by saynam »

ข้อมูลมีการเปลียนแปลงตลอดอ่ะครับ พอจะมีสูตรในการคำนวณหรือไม่ครับ
joo
Gold
Gold
Posts: 1213
Joined: Sat Apr 17, 2010 3:50 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#4

Post by joo »

:D ลองแนบตัวอย่างไฟล์มาหน่อยครับจะได้อ้างอิงเซลล์ได้ถูกต้อง
เบื้องต้นลองแบบนี้ดูครับ ถ้าข้อมูลจัดเก็บเป็น Text อยู่ที่ A1:A6 ที่เซลล์ B1 คีย์ =LOOKUP(CHAR(255),CHOOSE({1,2},"",INDEX($A$1:$A$6,SMALL(IF(FREQUENCY(MATCH($A$1:$A$6,$A$1:$A$6,0),ROW($A$1:$A$6)-ROW($A$1)+1),ROW($A$1:$A$6)-ROW($A$1)+1),ROWS(B$1:B1)))))
กดแป้น Ctrl+Shift+Enter พร้อมกันแล้วคัดลอกลงล่าง
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#5

Post by saynam »

Stock summary นะครับ ที่คอลัมน์ H (Lot) ผมต้องการจัดเรียงใหม่ที่คอลัมน์ M เพื่อจะแสดงรายการ Lot ที่มีในสินค้านั้นๆ เพื่อรวมจำนวน
You do not have the required permissions to view the files attached to this post.
Totem
Silver
Silver
Posts: 643
Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007

Re: การแสดงผล โดยค่าไม่ซ้ำ

#6

Post by Totem »

saynam wrote:Stock summary นะครับ ที่คอลัมน์ H (Lot) ผมต้องการจัดเรียงใหม่ที่คอลัมน์ M เพื่อจะแสดงรายการ Lot ที่มีในสินค้านั้นๆ เพื่อรวมจำนวน

:D ลองคีย์ตามนี้ครับ
M1=SUMPRODUCT(1/COUNTIF($H$3:$H$8,$H$3:$H$8))

M3=IF(ROWS(M$3:M3)>$M$2,"",INDEX($H$3:$H$8,SMALL(IF(MATCH($H$3:$H$8,$H$3:$H$8,0)=ROW($H$3:$H$8)-ROW($H$3)+1,ROW($H$3:$H$8)-ROW($H$3)+1),ROWS(M$3:M3)))) Ctrl+Alt+Enter แล้วคัดลอกลงมาด้านล่าง

N3=COUNTIF($H$3:$H$8,M3) คัดลอกลงมาด้านล่าง
Totem
Silver
Silver
Posts: 643
Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007

Re: การแสดงผล โดยค่าไม่ซ้ำ

#7

Post by Totem »

Totem wrote:
saynam wrote:Stock summary นะครับ ที่คอลัมน์ H (Lot) ผมต้องการจัดเรียงใหม่ที่คอลัมน์ M เพื่อจะแสดงรายการ Lot ที่มีในสินค้านั้นๆ เพื่อรวมจำนวน

:D ลองคีย์ตามนี้ครับ
M1=SUMPRODUCT(1/COUNTIF($H$3:$H$8,$H$3:$H$8))

M3=IF(ROWS(M$3:M3)>$M$2,"",INDEX($H$3:$H$8,SMALL(IF(MATCH($H$3:$H$8,$H$3:$H$8,0)=ROW($H$3:$H$8)-ROW($H$3)+1,ROW($H$3:$H$8)-ROW($H$3)+1),ROWS(M$3:M3)))) Ctrl+Alt+Enter แล้วคัดลอกลงมาด้านล่าง

N3=COUNTIF($H$3:$H$8,M3) คัดลอกลงมาด้านล่าง
ขอแก้ไขพิมพ์สูตรผิดที่ถูกต้อง

M3=IF(ROWS(M$3:M3)>$M$1,"",INDEX($H$3:$H$8,SMALL(IF(MATCH($H$3:$H$8,$H$3:$H$8,0)=ROW($H$3:$H$8)-ROW($H$3)+1,ROW($H$3:$H$8)-ROW($H$3)+1),ROWS(M$3:M3)))) Ctrl+Alt+Enter แล้วคัดลอกลงมาด้านล่าง
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#8

Post by saynam »

ในกรณีจำนวนคงทีได้ครับ แต่พอจำนวนมีการเปลียนแปลง ไม่ได้อ่ะครับ เลือกเปลี่ยนสินค้าที่ Summary B3
Totem
Silver
Silver
Posts: 643
Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007

Re: การแสดงผล โดยค่าไม่ซ้ำ

#9

Post by Totem »

saynam wrote:ในกรณีจำนวนคงทีได้ครับ แต่พอจำนวนมีการเปลียนแปลง ไม่ได้อ่ะครับ เลือกเปลี่ยนสินค้าที่ Summary B3
:D เนื่องจากในคอลัมน์ H เกิด EROR #NUM,#N/A

ลองตามนี้ครับที่ H3 =IFERROR(INDEX(Sheet1!J2:J11,G3),"") ENTERและคัดลอกลงมาด้านล่าง
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#10

Post by saynam »

ได้แล้วครับ ขอบคุณมากครับ
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#11

Post by saynam »

แต่เหมือนจะมีความผิดพลาดครับ มีรายการสินค้า productA และ CARBOPOL 980% ที่มี 1 lot และหลายรายการ แสดงผิดพลาด
You do not have the required permissions to view the files attached to this post.
Totem
Silver
Silver
Posts: 643
Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007

Re: การแสดงผล โดยค่าไม่ซ้ำ

#12

Post by Totem »

saynam wrote:แต่เหมือนจะมีความผิดพลาดครับ มีรายการสินค้า productA และ CARBOPOL 980% ที่มี 1 lot และหลายรายการ แสดงผิดพลาด
:D ช่อง M3 สูตร กด ctrl+shift+enter
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#13

Post by saynam »

ก็ยังไม่ได้เหมือนเดิมนะครับ ดูจาก productA มีรายการเดียวที่มีปัญหา รายการอื่นไม่มีปัญหา จากข้อสังเกต ข้อมูลสินค้านี้ จะมี 1 lot แต่หลายรายการ โดยจะแสดงออกมา 2 lot โดย lot ที่ 2 ค่าเป็น 0
You do not have the required permissions to view the files attached to this post.
Totem
Silver
Silver
Posts: 643
Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007

Re: การแสดงผล โดยค่าไม่ซ้ำ

#14

Post by Totem »

saynam wrote:ก็ยังไม่ได้เหมือนเดิมนะครับ ดูจาก productA มีรายการเดียวที่มีปัญหา รายการอื่นไม่มีปัญหา จากข้อสังเกต ข้อมูลสินค้านี้ จะมี 1 lot แต่หลายรายการ โดยจะแสดงออกมา 2 lot โดย lot ที่ 2 ค่าเป็น 0
:D ปรับตามนี้ดูครับ

J1=SUMPRODUCT((S_Lot<>0)/COUNTIF(S_Lot,S_Lot&""))
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#15

Post by saynam »

ได้แล้ว ได้แล้ว ขอบคุณมากมายครับผม
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#16

Post by saynam »

ขอถามอีกนิดครับ ลองทำแล้ว ในแถบ Search ต้องการเรียงข้อมูลในแนว COLUMN เหมือนที่เคยเรียงตาม ROWS ต้องปรับสูตรอย่างไร ทำได้หรือเปล่าครับ
You do not have the required permissions to view the files attached to this post.
Totem
Silver
Silver
Posts: 643
Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007

Re: การแสดงผล โดยค่าไม่ซ้ำ

#17

Post by Totem »

saynam wrote:ขอถามอีกนิดครับ ลองทำแล้ว ในแถบ Search ต้องการเรียงข้อมูลในแนว COLUMN เหมือนที่เคยเรียงตาม ROWS ต้องปรับสูตรอย่างไร ทำได้หรือเปล่าครับ
:D เรียงให้เป็นแบบนี้หรือเปล่าครับ

L3=IF(COLUMNS(L3:L3)>$E$1,"",INDEX(A_Product_Name,SMALL(IF(MATCH(A_Product_Name,A_Product_Name,0)=ROW(A_Product_Name)-ROW($E$3)+1,ROW(S_Lot)-ROW($E$3)+1),COLUMNS($L$3:L3)))) Ctrl+Shift+Enter คัดลอกไปทางขวา
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#18

Post by saynam »

มีรายการ 0 เพิ่มเข้ามาอีกรายการอีกแล้วอ่ะครับ
Totem
Silver
Silver
Posts: 643
Joined: Fri Oct 11, 2013 7:52 pm
Excel Ver: 365 , 2007

Re: การแสดงผล โดยค่าไม่ซ้ำ

#19

Post by Totem »

:D คีย์ตามนี้ครับ

L3=IFERROR(IF(COLUMNS(L3:L3)>$E$1,"-",INDEX(A_Product_Name,SMALL(IF(MATCH(A_Product_Name,A_Product_Name,0)=ROW(A_Product_Name)-ROW($E$3)+1,ROW(S_Lot)-ROW($E$3)+1),COLUMNS($L$3:L3)))),"") Ctrl+Shift+Enter คัดลอกไปทางขวา

E3=IFERROR(INDEX(C_Product,D3),"") คัดลอกลงมาครับ
saynam
Member
Member
Posts: 11
Joined: Mon Jul 07, 2014 1:33 pm

Re: การแสดงผล โดยค่าไม่ซ้ำ

#20

Post by saynam »

สอบถามเพิ่มเติมครับ AJ=IFERROR(SUMIF(P_Lot:P_Pay,AH3,P_Pay:P_Pay),"") พอ Copy ลงมา ค่าที่ไม่มีข้อมูล กลับมีข้อมูลมา ผมทำผิดตรงไหนหรอครับ
You do not have the required permissions to view the files attached to this post.
Post Reply