กำหนดค่าตามเวลา Start time ที่กำหนด
Posted: Wed Jan 15, 2014 3:19 pm
หาค่า Plan ตามช่วงเวลา เช่น ถ้าเวลา Start time ตั้งแต่ 08:01 - 09:00 ให้นำค่า QTY(F8) ไปวางไว้ที่ช่อง Plan
คลังคำตอบแห่งความรู้จากคนไทย เพื่อโลกที่ต้องการเข้าใจในสิ่งเล็ก ๆ อย่างลึกซึ้ง
https://www.snasui.com/
ถ้า Start time เปลี่ยนเช่น 9:25 อยากให้ข้อมูล QTY ไปโชว์ในช่วงเวลา 09:01 - 10:00 ค่ะ แต่ทำแล้วถ้าตามสูตรจะคืนค่า 0snasui wrote:สูตรที่เขียนมาเองแล้วใน Q8 มีปัญหาอะไรครับ?
ยังไม่เข้าใจค่ะ ว่าทำไมต้องคีย์เวลาใหม่ แต่ตอนนี้ลองใช้เงื่อนไข IF มาช่วยแล้วค่ะsnasui wrote:ลองตามนี่้ครับ
- ที่ Q1:AZ1 และ Q2:AZ2 คีย์เวลาเริ่มต้น เวลาสิ้นสุดตามลำดับ
- ที่ Q8 คีย์สูตร
=IF(AND(Q$7="Plan",$N8>=Q$1,$N8<=Q$2),$F8,"")
Enter > Copy ไปยังเซลล์ที่เกี่ยวข้อง
snasui wrote:เวลาเดิมที่ใช้เปรียบเทียบเป็น Text จึงต้องคีย์ใหม่เพื่อให้เปรียบเทียบกันได้ครับ
ไม่ทราบว่าถ้าคีย์เวลาใหม่แล้วติดปัญหาใดครับ![]()
คุณควรแสดงตัวอย่างคำตอบที่ต้องการมาสัก 2-3 ตัวอย่างเพื่อให้เห็นว่าตัวอย่างคำตอบเป็นอย่างไรจะได้เข้าถึงปัญหาได้โดยไว
snasui wrote:ลองตามนี่้ครับ
- ที่ Q1:AZ1 และ Q2:AZ2 คีย์เวลาเริ่มต้น เวลาสิ้นสุดตามลำดับ
- ที่ Q8 คีย์สูตร
=IF(AND(Q$7="Plan",$N8>=Q$1,$N8<=Q$2),$F8,"")
Enter > Copy ไปยังเซลล์ที่เกี่ยวข้อง
snasui wrote:ตัวอย่างสูตรที่ Q8 ครับ
=IF(AND($N8>=TIME(8,1,0),$N8<=TIME(9,0,0)),$F8,0)
ตัวอย่างสูตรที่ T10
=IF(AND($N10>=TIME(9,1,0),$N10<=TIME(10,0,0)),$F10,0)
ถ้าเข้าใจสิ่งที่ผมเขียนไปตามที่ยกมาด้านล่าง สูตรพวกนี้จะ Dynamic ไม่ต้องคอยเปลี่ยนค่าฟังก์ชั่น Time ในคอลัมน์ต่าง ๆ อีกต่อไปsnasui wrote:ลองตามนี่้ครับ
- ที่ Q1:AZ1 และ Q2:AZ2 คีย์เวลาเริ่มต้น เวลาสิ้นสุดตามลำดับ
- ที่ Q8 คีย์สูตร
=IF(AND(Q$7="Plan",$N8>=Q$1,$N8<=Q$2),$F8,"")
Enter > Copy ไปยังเซลล์ที่เกี่ยวข้อง
ถ้าคีย์เวลาใหม่ ในช่อง N ข้อมูลก็เปลี่ยนไปค่ะsnasui wrote:เวลาเดิมที่ใช้เปรียบเทียบเป็น Text จึงต้องคีย์ใหม่เพื่อให้เปรียบเทียบกันได้ครับ
ไม่ทราบว่าถ้าคีย์เวลาใหม่แล้วติดปัญหาใดครับ![]()
คุณควรแสดงตัวอย่างคำตอบที่ต้องการมาสัก 2-3 ตัวอย่างเพื่อให้เห็นว่าตัวอย่างคำตอบเป็นอย่างไรจะได้เข้าถึงปัญหาได้โดยไว
สำหรับประโยคนี้ไม่เข้าใจครับ ช่วยอธิบายเพิ่มเติมว่าปัญหาคืออะไร ต้องการคำตอบในเซลล์ใด เป็นเท่าใด ด้วยเงื่อนไขใดphutta wrote:ถ้าคีย์เวลาใหม่ ในช่อง N ข้อมูลก็เปลี่ยนไปค่ะ
snasui wrote:จากสูตรใน H9
=IF(G9="B",VLOOKUP(D9,Tacttime!B6:H6000,6,0),VLOOKUP(D9,Tacttime!B6:H6000,7,"0"))
ควรเป็น
=IF(G9="B",VLOOKUP(D9,Tacttime!$B$6:$H$6000,6,0),VLOOKUP(D9,Tacttime!$B$6:$H$6000,7,"0"))
การใส่ $ เป็นการ Lock เซลล์ไม่ให้ช่วงข้อมูลเปลียนไป ไม่เช่นนั้นจะทำให้ผลลัพธ์ไม่ถูกต้อง อ่านเกี่ยวกับการ Lock เซลล์ได้ที่ wordpress/beginner-knowledge/
กรณีไม่ต้องการให้เกิดค่า Error สามารถใช้ Iferror ดักได้เป็นด้านล่างครับ
=IFERROR(IF(G9="B",VLOOKUP(D9,Tacttime!$B$6:$H$6000,6,0),VLOOKUP(D9,Tacttime!$B$6:$H$6000,7,"0")),0)
ความหมายคือหากผลลัพธ์เป็น Error ให้แสดงค่า 0
สำหรับประโยคนี้ไม่เข้าใจครับ ช่วยอธิบายเพิ่มเติมว่าปัญหาคืออะไร ต้องการคำตอบในเซลล์ใด เป็นเท่าใด ด้วยเงื่อนไขใดphutta wrote:ถ้าคีย์เวลาใหม่ ในช่อง N ข้อมูลก็เปลี่ยนไปค่ะ
ขอโทษทีค่ะ ตอบผิดข้อความน่ะค่ะ พอดีไปอ่านข้อความเก่าแล้วตอบค่ะ
=IFERROR(IF(G9="B",VLOOKUP(D9,Tacttime!$B$6:$H$6000,6,0),VLOOKUP(D9,Tacttime!$B$6:$H$6000,7,"0")),0)snasui wrote:จากสูตรใน H9
=IF(G9="B",VLOOKUP(D9,Tacttime!B6:H6000,6,0),VLOOKUP(D9,Tacttime!B6:H6000,7,"0"))
ควรเป็น
=IF(G9="B",VLOOKUP(D9,Tacttime!$B$6:$H$6000,6,0),VLOOKUP(D9,Tacttime!$B$6:$H$6000,7,"0"))
การใส่ $ เป็นการ Lock เซลล์ไม่ให้ช่วงข้อมูลเปลียนไป ไม่เช่นนั้นจะทำให้ผลลัพธ์ไม่ถูกต้อง อ่านเกี่ยวกับการ Lock เซลล์ได้ที่ wordpress/beginner-knowledge/
กรณีไม่ต้องการให้เกิดค่า Error สามารถใช้ Iferror ดักได้เป็นด้านล่างครับ
=IFERROR(IF(G9="B",VLOOKUP(D9,Tacttime!$B$6:$H$6000,6,0),VLOOKUP(D9,Tacttime!$B$6:$H$6000,7,"0")),0)
ความหมายคือหากผลลัพธ์เป็น Error ให้แสดงค่า 0
สำหรับประโยคนี้ไม่เข้าใจครับ ช่วยอธิบายเพิ่มเติมว่าปัญหาคืออะไร ต้องการคำตอบในเซลล์ใด เป็นเท่าใด ด้วยเงื่อนไขใดphutta wrote:ถ้าคีย์เวลาใหม่ ในช่อง N ข้อมูลก็เปลี่ยนไปค่ะ