Page 1 of 1

ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Fri Nov 16, 2012 5:05 pm
by bafo
สวัสดีครับ

ต้องการทราบราคาซื้อ และวันที่ซื้อล่าสุด โดยมีเงื่อนไขดังนี้ครับ
• ในหน้าชีท Purchase Order ในช่อง V7 เมื่อพิมพ์เลขที่เอกสาร จะโชว์รายการสั่งซื้อให้ รบกวนช่วยแนะนำสูตรในการใช้งานดังนี้ครับ
o สูตรหาวันที่ซื้อล่าสุด
o สูตรหาราคาซื้อล่าสุด

หมายเหตุ :
1. ตามสูตรในตัวอย่างไฟล์ที่ผมทำไว้ จะไม่สามารถหาราคาซื้อและวันที่ซื้อล่าสุดได้ครับ ในกรณีที่ซื้อวันที่วันเดียวกันครับ
2. ตามตัวอย่าง เอกสารเลขที่ POC5511-0026 วันที่ซื้อล่าสุดต้องเป็นวันที่ 2/10/2555 และราคาซื้อล่าสุด 100 บาทครับ
รบกวนขอคำแนะนำสูตรให้ด้วยครับ
ขอบคุณครับ

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Fri Nov 16, 2012 5:31 pm
by bank9597
:D
เอกสารเลขที่ POC5511-0026 วันที่ซื้อล่าสุดต้องเป็นวันที่ 2/11/2555 และราคาซื้อล่าสุด 160 ไม่ใช่เหรอครับ
หรือว่าผมมองผิด ลองแจ้งมาอีกทีครับ

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Fri Nov 16, 2012 6:16 pm
by bafo
สวัสดีครับ

รายการสั่งซื้อเลขที่ POC5511-0026 เป็นรายการซื้อปัจจุบันครับ ( ต้องการหารายการซื้อล่าสุดเพื่อเปรียบเทียบราคาซื้อปัจจุบันครับ คือหารายการซื้อก่อนหน้าครับ )
ส่วนรายการซื้อล่าสุดจะเป็นเอกสารเลขที่ POC5511-0013 วันที่ 2/10/2555 ราคา 100 บาทครับ

ขอบคุณครับ

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Fri Nov 16, 2012 6:39 pm
by bank9597
bafo wrote:สวัสดีครับ

รายการสั่งซื้อเลขที่ POC5511-0026 เป็นรายการซื้อปัจจุบันครับ ( ต้องการหารายการซื้อล่าสุดเพื่อเปรียบเทียบราคาซื้อปัจจุบันครับ คือหารายการซื้อก่อนหน้าครับ )
ส่วนรายการซื้อล่าสุดจะเป็นเอกสารเลขที่ POC5511-0013 วันที่ 2/10/2555 ราคา 100 บาทครับ

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

เช่นรหัส POC5511-0026 มีรายการสั่งซื้อคือ

000 090 14 51 2/11/2555 กรองโซล่า พร้อมโอริง Benz "MICRO" 20 160.00

แต่สิ่งที่คุณต้องการคือ รหัสสินค้า 000 090 14 51 ซึ่งมันอยู่ในรหัสสั่งซื้อ POC5511-0013 ไม่ใช่ POC5511-0026 ที่คุณระบุมาในตัวอย่าง

ลองอธิบายหน่อยครับ ว่ามันเชื่อมโยงกันอย่างไร

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Fri Nov 16, 2012 10:40 pm
by bafo
สวัสดีครับ
1. สาเหตุที่อ้างอิงจากใบสั่งซื้อ

• ที่ผมอ้างอิงจากใบสั่งซื้อ เนื่องจากว่า เลขที่ใบสั่งซื้อเป็นตัวแปรที่พิมพ์เข้าไป เพื่อให้รู้ว่ารายการสั่งซื้อปัจจุบันเลขที่ POC5511-0026 มีรายการสั่งซื้อ 1 รายการ และในฟอร์มเอกสารจะมีช่องราคาซื้อล่าสุด และวันที่ซื้อล่าสุด เพื่อเป็นตัวเปรียบเทียบราคาซื้อปัจจุบันว่า ราคาที่เราซื้อในปัจจุบันนั้น เป็นราคาซื้อที่แพงกว่าราคาที่ซื่อล่าสุดหรือไม่ ซึ่งเมื่อเราพิมพ์หมายเลขใบสั่งซื้อหมายเลขอื่นเข้าไป รายการสั่งซื้อก็จะเปลี่ยนแปลงไปด้วยครับ ( ตามสูตรที่บันทึกเข้าไปครับ )

หมายเหตุ : ฟอร์มนี้เป็นฐานข้อมูลที่ Export มาจากโปรแกรมสำเร็จรูปครับ เป็นเอกสารที่จัดทำขึ้นเพื่อใช้ตรวจสอบราคาซื้อ เพื่อเป็นข้อมูลสำหรับผู้เซ็นต์อนุมัติครับ เพื่อใช้ตรวจสอบว่าเราได้ซื้อสินค้าราคาเดิมหรือไม่ ถูกลงหรือแพงขึ้น ครับ ไม่ได้เป็นฟอร์มเพื่อออกใบสั่งซื้อครับ ก็เลยใช้อ้างอิงจากเลขที่ใบสั่งซื้อครับ

2. สำหรับรหัสสินค้า 000 090 14 51 ที่ผมอ้างอิงราคาซื้อล่าสุด ไปอยู่ในใบสั่งซื้อเลขที่ POC5511-0013 เนื่องจาก ราคาซื้อปัจจุบันออกใบสั่งซื้อเลขที่ POC5511-0026 แต่จะสังเกตว่า รหัสสินค้า 000 090 14 51 ราคาซื้อล่าสุดของรหัสนี้ซื้อเมื่อวันที่ 2/10/2555 โดยอ้างอิงใบสั่งซื้อล่าสุดเลขที่ POC5511-0013 เท่านั้นครับ ใบสั่งซื้อไม่ได้เป็นตัวแปรสำคัญในการใช้กำหนดราคาซื้อล่าสุดหรือวันที่ซื้อล่าสุดครับ จริงๆ แล้วเลขที่ใบสั่งซื้อใช้แค่อย่างเดียวครับ คือพิมพ์เข้าไปในช่อง V7 ของชีท PurchaseOrder เท่านั้นครับ แล้วข้อมูลก็จะเปลี่ยนไปตามรายการสั่งซื้อที่เราได้บันทึกเอาไว้ครับ ส่วนราคาซื้อล่าสุด และวันที่ซื้อล่าสุด ใช้รหัสสินค้าเป็นตัวกำหนดและเปรียบเทียบราคาซื้อครับ

ขอบคุณครับ

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Fri Nov 16, 2012 11:14 pm
by bank9597
bafo wrote:สวัสดีครับ
1. สาเหตุที่อ้างอิงจากใบสั่งซื้อ

• ที่ผมอ้างอิงจากใบสั่งซื้อ เนื่องจากว่า เลขที่ใบสั่งซื้อเป็นตัวแปรที่พิมพ์เข้าไป เพื่อให้รู้ว่ารายการสั่งซื้อปัจจุบันเลขที่ POC5511-0026 มีรายการสั่งซื้อ 1 รายการ และในฟอร์มเอกสารจะมีช่องราคาซื้อล่าสุด และวันที่ซื้อล่าสุด เพื่อเป็นตัวเปรียบเทียบราคาซื้อปัจจุบันว่า ราคาที่เราซื้อในปัจจุบันนั้น เป็นราคาซื้อที่แพงกว่าราคาที่ซื่อล่าสุดหรือไม่ ซึ่งเมื่อเราพิมพ์หมายเลขใบสั่งซื้อหมายเลขอื่นเข้าไป รายการสั่งซื้อก็จะเปลี่ยนแปลงไปด้วยครับ ( ตามสูตรที่บันทึกเข้าไปครับ )

หมายเหตุ : ฟอร์มนี้เป็นฐานข้อมูลที่ Export มาจากโปรแกรมสำเร็จรูปครับ เป็นเอกสารที่จัดทำขึ้นเพื่อใช้ตรวจสอบราคาซื้อ เพื่อเป็นข้อมูลสำหรับผู้เซ็นต์อนุมัติครับ เพื่อใช้ตรวจสอบว่าเราได้ซื้อสินค้าราคาเดิมหรือไม่ ถูกลงหรือแพงขึ้น ครับ ไม่ได้เป็นฟอร์มเพื่อออกใบสั่งซื้อครับ ก็เลยใช้อ้างอิงจากเลขที่ใบสั่งซื้อครับ

2. สำหรับรหัสสินค้า 000 090 14 51 ที่ผมอ้างอิงราคาซื้อล่าสุด ไปอยู่ในใบสั่งซื้อเลขที่ POC5511-0013 เนื่องจาก ราคาซื้อปัจจุบันออกใบสั่งซื้อเลขที่ POC5511-0026 แต่จะสังเกตว่า รหัสสินค้า 000 090 14 51 ราคาซื้อล่าสุดของรหัสนี้ซื้อเมื่อวันที่ 2/10/2555 โดยอ้างอิงใบสั่งซื้อล่าสุดเลขที่ POC5511-0013 เท่านั้นครับ ใบสั่งซื้อไม่ได้เป็นตัวแปรสำคัญในการใช้กำหนดราคาซื้อล่าสุดหรือวันที่ซื้อล่าสุดครับ จริงๆ แล้วเลขที่ใบสั่งซื้อใช้แค่อย่างเดียวครับ คือพิมพ์เข้าไปในช่อง V7 ของชีท PurchaseOrder เท่านั้นครับ แล้วข้อมูลก็จะเปลี่ยนไปตามรายการสั่งซื้อที่เราได้บันทึกเอาไว้ครับ ส่วนราคาซื้อล่าสุด และวันที่ซื้อล่าสุด ใช้รหัสสินค้าเป็นตัวกำหนดและเปรียบเทียบราคาซื้อครับ

ขอบคุณครับ
:cry: ใจเย็นๆครับ เพื่อให้คนอื่นเข้าใจด้วย ผมเลยต้องถามให้ละเอียดก่อนจะตอบไป
ที่ V14 คีย์ =IF($C14="","",INDEX(Data!$R$2:$R$24,IF(Data!$D$2:$D$24=LOOKUP(CHAR(255),$C14),IF(Data!$H$2:$H$24=LARGE(Data!$H$2:$H$24,2),ROW(Data!$D$2:$D$24)-ROW(Data!$D$2)+1)),ROWS(V$14:V14))) กด Ctrl+Shift+Enter คัดลอกลงมา

ที่ X14 คีย์ =IF($C14="","",INDEX(Data!$H$2:$H$24,IF(Data!$D$2:$D$24=LOOKUP(CHAR(255),$C14),IF(Data!$H$2:$H$24=LARGE(Data!$H$2:$H$24,2),ROW(Data!$D$2:$D$24)-ROW(Data!$D$2)+1)),ROWS(V$14:V14))) กด Ctrl+Shift+Enter คัดลอกลงมา

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Sat Nov 17, 2012 12:05 am
by bafo
สวัสดีครับ

1. ผมได้นำสูตรตามที่แนะนำไปใส่แล้วครับ ในกรณีที่รายการใบสั่งซื้อมี 1 รายการข้อมูลได้ตามปกติครับ

แต่ถ้าข้อมูลในใบสั่งซื้อมีมากกว่า 1 รายการ จะขึ้น #REF! ครับ ( ทั้งราคาซื้อล่าสุดและวันที่ซื้อล่าสุดครับ )

2. สูตรในช่อง V14 ในชีท PurchaseOrder ค่าที่ได้ไม่เปลี่ยนแปลงครับ ในกรณีที่พิมพ์เลขทีใบสั่งซื้อเลขที่อื่นในช่อง V7 ครับ

3. กรณีที่รายการใดไม่ตรงตามเงื่่อนไข ให้แสดงเป็นค่าว่างครับ

รบกวนขอคำแนะนำในการใช้สูตรด้วยครับ

ขอบคุณครับ

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Sat Nov 17, 2012 12:39 am
by bank9597
bafo wrote:สวัสดีครับ

1. ผมได้นำสูตรตามที่แนะนำไปใส่แล้วครับ ในกรณีที่รายการใบสั่งซื้อมี 1 รายการข้อมูลได้ตามปกติครับ

แต่ถ้าข้อมูลในใบสั่งซื้อมีมากกว่า 1 รายการ จะขึ้น #REF! ครับ ( ทั้งราคาซื้อล่าสุดและวันที่ซื้อล่าสุดครับ )

2. สูตรในช่อง V14 ในชีท PurchaseOrder ค่าที่ได้ไม่เปลี่ยนแปลงครับ ในกรณีที่พิมพ์เลขทีใบสั่งซื้อเลขที่อื่นในช่อง V7 ครับ

3. กรณีที่รายการใดไม่ตรงตามเงื่่อนไข ให้แสดงเป็นค่าว่างครับ

รบกวนขอคำแนะนำในการใช้สูตรด้วยครับ

ขอบคุณครับ
:D

ที่ Y9 คีย์ =SUMPRODUCT(--(Data!$D$2:$D$24=LOOKUP(CHAR(255),V7)))

ที่ V14 คีย์ =IFERROR(IF(ROWS(V$14:V14)>$Y$9,"",INDEX(Data!$R$2:$R$24,IF(Data!$G$2:$G$24=LOOKUP(CHAR(255),$C14),IF(Data!$H$2:$H$24=LARGE(Data!$H$2:$H$24,ROWS(V$14:V14)+1),ROW(Data!$D$2:$D$24)-ROW(Data!$D$2)+1)),ROWS(V$14:V14))),"") กด Ctrl+Shift+Enter คัดลอกลงมา

ที่ X14 คีย์ =IFERROR(IF(ROWS(X$14:X14)>$Y$9,"",INDEX(Data!$H$2:$H$24,IF(Data!$G$2:$G$24=LOOKUP(CHAR(255),$C14),IF(Data!$H$2:$H$24=LARGE(Data!$H$2:$H$24,ROWS(X$14:X14)+1),ROW(Data!$D$2:$D$24)-ROW(Data!$D$2)+1)),ROWS(X$14:X14))),"")) กด Ctrl+Shift+Enter คัดลอกลงมา

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Sun Nov 18, 2012 3:27 pm
by bafo
สวัสดีครับ

ผมได้นำสูตรไปใส่ตามทีี่แนะนำแล้วครับ รบกวนขอคำแนะนำดังนี้ครับ

สูตรในช่อง V14 และ X14 ในชีท PurchaseOrder ค่าที่ได้ไม่เปลี่ยนแปลงครับ ในกรณีที่พิมพ์ เลขทีใบสั่งซื้อเลขที่อื่น ในช่อง V7 ครับ ( ปกติราคาจะเปลี่ยนไปตามรหัสสินค้าครับ )

ราคาซื้อล่าสุดและวันที่ซื้อล่าสุดไม่เปลี่ยนแปลงครับ จะเป็นค่าคงที่ตลอดครับ
ราคาซื้อล่าสุดอยู่ที่ 100 บาท
วันที่ซื้อล่าสุดอยู่ที่ 02/10/2555

รบกวนขอคำแนะนำเพิ่มเติมในการใช้สูตรด้วยครบ

ขอบคุณครับ

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Sun Nov 18, 2012 5:57 pm
by bank9597
:D ลองตามนี้ครับ

ที่ X14 คีย์ =IF(MAX(IF(Data!$G$2:$G$24=LOOKUP(CHAR(255),$C14),IF(Data!$H$2:$H$24<LARGE(IF(Data!$G$2:$G$24=LOOKUP(CHAR(255),$C14),Data!$H$2:$H$24),1),Data!$H$2:$H$24)))=0,"",MAX(IF(Data!$G$2:$G$24=LOOKUP(CHAR(255),$C14),IF(Data!$H$2:$H$24<LARGE(IF(Data!$G$2:$G$24=LOOKUP(CHAR(255),$C14),Data!$H$2:$H$24),1),Data!$H$2:$H$24)))) กด Ctrl+Shift+Enter คัดลอกลงมา

ที่ Z14 คีย์ =IFERROR(LARGE(IF(Data!$G$2:$G$24=LOOKUP(CHAR(255),$C14),IF(Data!$H$2:$H$24=$X14,Data!$A$2:$A$24)),1),"") กด Ctrl+Shift+Enter คัดลอกลงมา

ที่ V14คีย์
=IFERROR(INDEX(Data!$R$2:$R$24,MATCH(1,IF(Data!$G$2:$G$24=LOOKUP(CHAR(255),$C14:$E14),IF(Data!$H$2:$H$24=$X14,IF(Data!$A$2:$A$24=$Z14,1))),0)),"") Ctrl+Shift+Enter คัดลอกลงมา

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Mon Nov 19, 2012 3:00 pm
by bafo
สวัสดีครับ

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

ข้อมูลที่ไ้ด้ถูกต้องแม่นยำครับ ขอบคุณ คุณ bank9597 มากครับ ที่แนะนำการใช้สูตรให้สามารถทำงานได้ง่ายขึ้นครับ

ขอบคุณครับ

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Mon Nov 19, 2012 3:56 pm
by bank9597
bafo wrote:สวัสดีครับ

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

ข้อมูลที่ไ้ด้ถูกต้องแม่นยำครับ ขอบคุณ คุณ bank9597 มากครับ ที่แนะนำการใช้สูตรให้สามารถทำงานได้ง่ายขึ้นครับ

ขอบคุณครับ
ยังมีเรื่องที่เกรงว่าจะเกิดความผิดพลาดได้ คือ

ในกรณีที่ เรามีการสั่งซื้อของจากซัพพลายเออร์ รายการเดียวกัน แต่คนล่ะซัพพลายเออร์กัน ภายในวันเดียวกัน ยกตัวอย่าง

ลำดับ 100 ใบสั่งซื้อ 102 สินค้า รหัส 101 สั่งซื้อกับ บริษัท A ราคา 200 ในวันที่ 11/11/2012
ลำดับ 101 ใบสั่งซื้อ 101 สินค้า รหัส 101 สั่งซื้อกับ บริษัท B ราคา 190 ในวันที่ 11/11/2012

จะเห็นได้ว่ามีการซื้อสินค้าตัวเดียวกัน วันเดียวกัน แต่คนล่ะที่กัน ในส่วนนี้ หากยึดที่ลำดับการสั่งซื้อ สูตรที่ผมให้ไปก็จะแสดงไม่ผิดพลาด
แต่หากยึดที่รหัสใบสั่งซื้อ สูตรแสดงผลผิดพลาดอย่างแน่นอนครับ

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

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Mon Nov 19, 2012 6:14 pm
by bafo
สวัสดีครับ

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

ซึ่งผมได้ทดลองจากงานจริง และตรวจสอบดูแล้ว ถูกต้องไม่ผิดเพี้ยนครับ ซึ่งดีกว่าตัวเก่าที่ผมทำไว้ ซึ่งยังไม่สมบูรณ์ครับ

ขอบคุณครับ

Re: ต้องการหาราคาซื้อ และวันที่ซื้อล่าสุด

Posted: Mon Nov 19, 2012 6:30 pm
by bank9597
bafo wrote:สวัสดีครับ

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

ซึ่งผมได้ทดลองจากงานจริง และตรวจสอบดูแล้ว ถูกต้องไม่ผิดเพี้ยนครับ ซึ่งดีกว่าตัวเก่าที่ผมทำไว้ ซึ่งยังไม่สมบูรณ์ครับ

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