Page 1 of 2

ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไงคะ

Posted: Tue Mar 05, 2013 3:16 pm
by แอม
รายการ
No.Product Q.
1 A1 12 A1 12
2 A2 9 A2 9
3 A3 5
4 A4 4
5 A5 0
6 A6 7
7 A7 5
8 A8 0
11 A11 1

สินค้าอะไรบ้างที่ขายได้และขายได้เท่าไหร่
P. Q.
A1 12
A3 5
A4 4
A5 0
A6 7
A7 5
0
0
0
A11 1

ต้องการให้ข้ามไม่แสดงรายการสินค้าที่เป็น 0 จะเขียนสูตรยังไงคะ
ถ้าอยากให้แสดงแค่สินค้าที่มีจำนวน
A1 12
A2 9
A3 5
A4 4
A5 5
A6 7
A7 5
A11 1
.................. :?:

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Tue Mar 05, 2013 3:39 pm
by joo
:D ลองแนบไฟล์ตัวอย่างพร้อมเงื่อนไขและคำตอบที่ต้องการมาดูหน่อยครับ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Tue Mar 05, 2013 3:53 pm
by แอม
ตัวอย่างข้อมูลค่ะ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Tue Mar 05, 2013 4:06 pm
by joo
:D ลองแบบนี้ดูครับที่ J7 คีย์ =INDEX($C$7:$C$17,MATCH(I7,$B$7:$B$17,0)) Enter >Copyลงด้านล่าง

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Tue Mar 05, 2013 4:32 pm
by แอม
ขอบคุณค่ะ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Tue Mar 05, 2013 4:59 pm
by แอม
สามารถใช้ร่วมกับ IF ซ้อน IF ได้ป่าวคะ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Tue Mar 05, 2013 5:53 pm
by bank9597
:D ใช้หัดใช้ if ดูครับ เช่นสูตรของคุณ Joo เพิ่ม if ไป จะได้เป็น
ที่ J7 =IF(I7="","",INDEX($C$7:$C$17,MATCH(I7,$B$7:$B$17,0))) คัดลอกลงมา

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Tue Mar 05, 2013 6:05 pm
by joo
แอม wrote:สามารถใช้ร่วมกับ IF ซ้อน IF ได้ป่าวคะ
งดใช้ภาษาแซทครับ กรูณาแก้ไขด้วยครับ :D

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Wed Mar 06, 2013 10:12 am
by แอม
ขอรบกวนอีกตัวอย่างนะคะ

ขอบคุณค่ะ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Wed Mar 06, 2013 1:15 pm
by joo
:D ช่วยอธิบายเงื่อนไขพร้อมกับคำตอบที่ต้องการในกระทู้ให้ชัดเจนหน่อยครับ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Wed Mar 06, 2013 1:38 pm
by แอม
เงื่อนไขมีอยู่ว่า ต้องการแสดง รายการรับเข้าในแต่ละดือน ว่ารับเข้าMaterial Number อะไรบ้าง แล้วรับเข้ามาจำนวนเท่าไหร่ (ดึงข้อมูลจากsheet Baase of Material)ค่ะ
แอมลองใช้คำสั่ง IF ซ้อน IF ดู
เช่น มกราคม ถ้าช่องรับเข้ามากกว่า E3>0 ให้นำค่า A3 มาแสดง ซ้อนไปเรื่อยๆจนครบทุกเดือน
ปัญหาคือ ที่ J5 ช่องE5-E10 (จากsheet Baase of Material)ไม่มีการรับเข้าเลยนำค่าว่างมาแสดงด้วย
ไม่ต้องการให้แสดงค่าว่างนี้ แต่ไม่รู้จะอ้างเซลล์ยังไงค่ะ


ขอบคุณค่ะ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Wed Mar 06, 2013 1:50 pm
by joo
แอม wrote:เงื่อนไขมีอยู่ว่า ต้องการแสดง รายการรับเข้าในแต่ละดือน ว่ารับเข้าMaterial Number อะไรบ้าง แล้วรับเข้ามาจำนวนเท่าไหร่ (ดึงข้อมูลจากsheet Baase of Material)ค่ะเช่น มกราคม ถ้าช่องรับเข้ามากกว่า E3>0 ให้นำค่า A3 มาแสดง ซ้อนไปเรื่อยๆจนครบทุกเดือน
คำตอบที่ต้องการอยู่ในซีทไหนเซลล์ไหนและใช้เงื่อนไขอะไรเป็นตัวดึงข้อมูลจากsheet Baase of Material มาแสดง เช่น ใช้รหัส หรือ เดือน
แอม wrote:ปัญหาคือ ที่ J5 ช่องE5-E10 (จากsheet Baase of Material)ไม่มีการรับเข้าเลยนำค่าว่างมาแสดงด้วย
ไม่ต้องการให้แสดงค่าว่างนี้ แต่ไม่รู้จะอ้างเซลล์ยังไงค่ะ
ไม่เข้าใจทำไมเซลล์มันซ้อนกัน ลองอธิบายมาใหม่ครับ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Wed Mar 06, 2013 2:06 pm
by แอม
ขอโทษค่ะ แอมมองเดือนผิด ที่เดือนกุมภาพันธ์ ที่ J5-J10 (จากsheet Baase of Material) ไม่มีการรับเข้า ทำให้ ในช่อง G8-G15 (sheet สรุปปี 56) ยังคงแสดงเป็นค่าว่าง ค่ะ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Wed Mar 06, 2013 2:08 pm
by bank9597
:D ลองดูตามนี้ครับ ว่าใช่ที่ต้องการหรือไม่

เนื่องจากการเก็บข้อมูลในแนวนอน ทำให้ใช้สูตรยากขึ้น ขั้นตอนการหาคำตอบจึงมากขึ้นไปด้วย

คีย์ 1-12 ในเซลล์ O2:O13
คีย์ e j o x ac ah aq av ba bj bo bt ตามลำดับลงมาจาก P2:P13
ที่ Q2 คีย์ =VLOOKUP(MONTH(J2&1),O2:P13,2,0)

ที่ K4 คีย์ =IFERROR(INDEX(INDIRECT("'Base of Materil 56'!"&$Q$2&3&":"&$Q$2&100),SMALL(IF(INDIRECT("'Base of Materil 56'!"&$Q$2&3&":"&$Q$2&100)<>"",ROW('Base of Materil 56'!$D$3:$D$100)-ROW('Base of Materil 56'!$D$3)+1),ROWS($K$4:K4))),"") กด Ctrl+Shift+Enter คัดลอกลงมา

ที่ G4 คีย์ =IFERROR(INDEX('Base of Materil 56'!A$3:A$100,SMALL(IF(INDIRECT("'Base of Materil 56'!"&$Q$2&3&":"&$Q$2&100)<>"",ROW('Base of Materil 56'!$D$3:$D$100)-ROW('Base of Materil 56'!$D$3)+1),ROWS($K$4:K4))),"") กด Ctrl+Shift+Enter คัดลอกลงมา

ที่ H4 คีย์ =IFERROR(VLOOKUP(G4,'Base of Materil 56'!$A$3:$B$100,2,0),"") คัดลอกลงมา

ทดสอบเลือกชื่อเดือนที่ต้องการให้แสดงข้อมูลที่ J2

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Wed Mar 06, 2013 2:32 pm
by แอม
ที่ G4 คีย์ =IFERROR(INDEX('Base of Materil 56'!A$3:A$100,SMALL(IF(INDIRECT("'Base of Materil 56'!"&$Q$2&3&":"&$Q$2&100)<>"",ROW('Base of Materil 56'!$D$3:$D$100)-ROW('Base of Materil 56'!$D$3)+1),ROWS($K$4:K4))),"") กด Ctrl+Shift+Enter คัดลอกลงมา


รบกวน ช่วยอธิบายคำสั่งตรงนี้เพิ่มหน่อยนะคะ งงๆ ค่ะ

ขอบคุณมากๆนะคะ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Wed Mar 06, 2013 2:44 pm
by bank9597
:D ให้อธิบายทั้งหมดคงยาวยืดครับ และต้องมีความรู้หลายๆสูตรเข้ามาผสมกัน

ศึกษาการใช้สูตร Index +Small ในวิดีโอได้เลยครับ ผมได้อธิบายไว้ค่อนข้างละเอียดแล้ว


ส่วนสูตรที่เพิ่มเข้าคือ สูตร Indirect สูตรนี้ใช้เชื่อมคำให้เป็นตำแหน่งเซลล์
เช่น เรามี A กับ 5 อยู่ใน A1และ A2 ตามลำดับ เราใช้สูตร =INDIRECT(A1&A2) ตำคอบที่ได้ก็จะอยู่ในเซลล์ A5 นั่นเอง

สามารถศึกษาเพิ่มเติมได้อีกครับ ผมอธิบายคร่าวให้เห็นภาพเท่านั้น

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Wed Mar 06, 2013 6:14 pm
by แอม
=IF($J$6="มกราคม",IF('Base of Materil 56'!E5>0,'Base of Materil 56'!A5,""),IF($J$6="กุมภาพันธ์",IF('Base of Materil 56'!J5>0,'Base of Materil 56'!A5,""),IF($J$6="มีนาคม",IF('Base of Materil 56'!O5>0,'Base of Materil 56'!A5,""),IF($J$6="เมษายน",IF('Base of Materil 56'!X5>0,'Base of Materil 56'!A5,""),IF($J$6="พฤษภาคม",IF('Base of Materil 56'!AC5>0,'Base of Materil 56'!A5,""),IF($J$6="มิถุนายน",IF('Base of Materil 56'!AH5>0,'Base of Materil 56'!A5,""),IF($J$6="กรกฎาคม",IF('Base of Materil 56'!AQ5>0,'Base of Materil 56'!A5,""),IF($J$6="สิงหาคม",IF('Base of Materil 56'!AV5>0,'Base of Materil 56'!A5,""),IF($J$6="กันยายน",IF('Base of Materil 56'!BA5>0,'Base of Materil 56'!A5,""),IF($J$6="ตุลาคม",IF('Base of Materil 56'!BJ5>0,'Base of Materil 56'!A5,""),IF($J$6="พฤศจิกายน",IF('Base of Materil 56'!BO5>0,'Base of Materil 56'!A5,""),IF($J$6="ธันวาคม",IF('Base of Materil 56'!BT5>0,'Base of Materil 56'!A5,""),""))))))))))))56'!A:BQ,E3),IF($J$6="ธันวาคม",VLOOKUP($G6,'Base of Materil 56'!A:BV,74,0)))))))))))))))

แอมใช้สูตนี้ใน G4 ที่เดือนกุมภาพันธ์ ที่ J5-J10 (จากsheet Baase of Material) ไม่มีการรับเข้า ทำให้ ในช่อง G8-G15 (sheet สรุปปี 56) ยังคงแสดงเป็นค่าว่าง

ต้องขอบคุณมากๆค่ะที่พยายามอธิบาย แต่แอมยังอ่อนมาก นำมาใช้ต่อไม่เป็นค่ะ


ขอบคุณมากๆค่ะ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Wed Mar 06, 2013 7:02 pm
by bank9597
:D ลองทวนคำถามใหม่อีกครั้งครับ ตามที่คุณ JOO ได้ถามไปเกี่ยวกับเรื่องคำถาม ซึ่งยังไม่ชัดเจน โดยผมเองก็ไม่มั่นใจว่าที่ตอบไปจะตรงที่ต้องการหรือไม่

แต่การใช้สูตรตามที่คุณแอมเขียนมาแบบนั้น ไม่ใช่แนวทางที่ดีครับ สูตรยาวเกินไปและไม่ยืดหยุ่นครับ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Thu Mar 07, 2013 3:40 pm
by แอม
ขอบคุณมากๆนะคะ จะพยายามทำความเข้าใจค่ะ

ขอถามต่ออีกนิดนะคะ
ที่ Q2 คีย์ =VLOOKUP(MONTH(J2&1),O2:P13,2,0) ทำไมแอมคีย์แล้วขึ้นค่า #Value! คะ

ขอบคุณค่ะ

Re: ไม่ต้องการให้แสดง รายการสินค้าที่เป็น 0 จะเขียนสูตรยังไง

Posted: Thu Mar 07, 2013 4:47 pm
by joo
:D ทดสอบกับไฟล์ไหนครับ ลองแนบไฟล์ที่ติดปัญหามาดูกันหน่อยครับจะได้เข้าใจตรงกันครับ