Page 2 of 2

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Feb 02, 2023 7:47 am
by yangkodza
snasui wrote: Thu Feb 02, 2023 6:08 am :D ตัวอย่างการปรับสูตรครับ

=LET(a,INDEX(วันเวร!$C$2:$G$113,MATCH("*"&$C8,TRIM(วันเวร!$B$2:$B$113),0),MATCH(LEFT(E$7,FIND(".",E$7)),TRIM(LEFT(SUBSTITUTE(OFFSET($E$7,0,MATCH("จ.*",$E$7:$AI$7,0)-1,1,5),CHAR(10),REPT(" ",5)),5)),0)),OR(AND(a=0,LEFT(E8,5)+0>="7:15"+0),AND(a="เวร",LEFT(E8,5)+0>=7/24)))
มีรายงานส่งผอ.สวยๆแล้วครับ
ขอบคุณมากครับอาจารย์ :thup: :thup: :thup:

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Apr 06, 2023 9:26 am
by yangkodza
อาจารย์ครับ เดือนมีนาคม มีการเช็คเวลา 3 ช่วง
1. 1-9 มี.ค. 66 เวร ไม่เกิน 7.01 ไม่เวร ไม่เกิน 7.16
2. 10-15 มี.ค. 66 ไม่เกิน 8.01
3. 16-31 มี.ค. 66 เวร ไม่เกิน 7.01 ไม่เวร ไม่เกิน 7.16
ตอนนี้ผมสามารถเช็ควันสายได้ทั้ง 3 ช่วงเวลาดังกล่าว
แต่ทำแถบสีวันที่สายไม่ได้ครับ รบกวนอาจารย์ชี้แนะด้วยครับ

สอบสูตรแถบสี.xlsx

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Apr 06, 2023 11:49 am
by snasui
:D ยังไม่พบว่ามีการเขียน Conditional Formatting มาในไฟล์แนบหรือเขียนไว้ที่ตำแหน่งใดกรุณาแจ้งมาด้วยครับ

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Apr 06, 2023 12:46 pm
by yangkodza
snasui wrote: Thu Apr 06, 2023 11:49 am :D ยังไม่พบว่ามีการเขียน Conditional Formatting มาในไฟล์แนบหรือเขียนไว้ที่ตำแหน่งใดกรุณาแจ้งมาด้วยครับ

สอบสูตรแถบสี.xlsx

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Apr 06, 2023 2:31 pm
by snasui
:D ตัวอยา่งสูตรครับ

=LET(a,INDEX(วันเวร!$C$2:$G$113,MATCH("*"&$C8,TRIM(วันเวร!$B$2:$B$113),0),MATCH(LEFT(E$7,FIND(".",E$7)),TRIM(LEFT(SUBSTITUTE(OFFSET($E$7,0,MATCH("พ.*",$E$7:$AI$7,0)-1,1,5),CHAR(10),REPT(" ",5)),5)),0)),d,--SUBSTITUTE(MID(E7,FIND(".",E7)+1,3),CHAR(10),""),OR(OR(AND(d>=1,d<=9,a=0,LEFT(E8,5)+0>="7:16"+0),AND(d>=1,d<=9,a="เวร",LEFT(E8,5)+0>="7:01"+0)),OR(AND(d>=10,d<=15,LEFT(E8,5)+0>="8:01"+0)),OR(AND(d>=16,d<=31,a=0,LEFT(E8,5)+0>="7:16"+0),AND(d>=16,d<=31,a="เวร",LEFT(E8,5)+0>="7:01"+0))))

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Apr 06, 2023 2:41 pm
by yangkodza
snasui wrote: Thu Apr 06, 2023 2:31 pm :D ตัวอยา่งสูตรครับ

=LET(a,INDEX(วันเวร!$C$2:$G$113,MATCH("*"&$C8,TRIM(วันเวร!$B$2:$B$113),0),MATCH(LEFT(E$7,FIND(".",E$7)),TRIM(LEFT(SUBSTITUTE(OFFSET($E$7,0,MATCH("พ.*",$E$7:$AI$7,0)-1,1,5),CHAR(10),REPT(" ",5)),5)),0)),d,--SUBSTITUTE(MID(E$7,FIND(".",E$7)+1,3),CHAR(10),""),OR(OR(AND(d>=1,d<=9,a=0,LEFT(E8,5)+0>="7:16"+0),AND(d>=1,d<=9,a="เวร",LEFT(E8,5)+0>="7:01"+0)),OR(AND(d>=10,d<=15,LEFT(E8,5)+0>="8:01"+0)),OR(AND(d>=16,d<=31,a=0,LEFT(E8,5)+0>="7:16"+0),AND(d>=16,d<=31,a="เวร",LEFT(E8,5)+0>="7:01"+0))))
อาจารย์ครับ ผมนำ code ไปใส่แล้วที่ E8-AI120 แต่แถบสีไม่แสดงครับ
สอบสูตรแถบสี1.xlsx

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Apr 06, 2023 2:44 pm
by snasui
:D แถบสีต้องขึ้นตรงเซลล์ไหนไหนและตรงตามเงื่อนไขชุดใดในสูตรนั้นครับ

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

สูตรนั้นมีความซับซ้อนเพราะสร้างรายงานให้มีความซับซ้อน การตรวจสอบสูตรว่าให้ผลถูกต้องหรือไม่ อย่างไร ให้วางสูตรลงไปในเซลล์ว่าง ๆ ด้านขวาข้อมูลแล้วค้ดลอกไปด้านขวาจนครบตามจำนวนเซลล์เมื่อเทียบกับข้อมูลต้นทางเพื่อจะตรวจสอบกันแบบเซลล์ต่อเซลล์ ค่าที่เป็น False แสดงว่าไม่เข้าเงื่อนไข ค่าที่เป็น True แสดงว่าเข้าเงื่อนไข และเมื่อเห็นว่าถูกต้องแล้วค่อยนำไปปรับใช้ใน Conditional Formatting ครับ

อ้อ...ผมแก้ E7 ให้เป็น E$7 ต้อง Update สูตรด้วยครับ

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Apr 06, 2023 3:03 pm
by yangkodza
ในส่วนของแถบสีที่จะให้แสดง แบ่งพื้นที่ออกเป็น 3 ส่วน ตามเงื่อนไขดังนี้
ส่วนที่ 1 พื้นที่สีเหลือง E8-M120 อ้างอิงจากแผ่นงานเวร เวร ไม่เกิน 7.01 ไม่เวร ไม่เกิน 7.16
ส่วนที่ 2 พื้นที่สีเหลือง N8-S120 อ้างอิงจากแผ่นงานเวร ไม่เกิน 8.01
ส่วนที่ 3 พื้นที่สีเหลือง T8-AI120 อ้างอิงจากแผ่นงานเวร เวร ไม่เกิน 7.01 ไม่เวร ไม่เกิน 7.16

ผมลองพยายามแกะสูตรที่อาจารย์แนะนำมาแตะแกะไม่ถูกครับ ในสูตร อ้างอิงวันเริ่มต้น คือ พ. ตรงส่วนนี้ เช็คจากวันที่ 1 คือวันอะไรใช่ไหมครับ รบการอาจารย์ช่วยแนะนำวิธีการแยก Code ให้หน่อยครับ

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Apr 06, 2023 6:27 pm
by snasui
:D สิ่งที่ผมตอบไปคิดเงื่อนไขทั้งหมดเข้าไปเรียบร้อยแล้ว ไม่ทราบว่าได้ลองทำแบบเซลล์ต่อเซลล์ตามที่แนะนำไปแล้วหรือไม่ ได้ผลเป็นอย่างไร ช่วยแนบไฟล์นั้นมาใหม่ ชี้ให้เห็นว่าเซลล์ไหนควรได้ True แต่ได้ False เช่นนี้เป็นต้นครับ

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Apr 06, 2023 7:21 pm
by yangkodza
อันนี้เอามาต่อท้ายแล้วครับ แต่ผมยังไม่เข้าใจที่อาจารย์บอกว่า อ้อ...ผมแก้ E7 ให้เป็น E$7 ต้อง Update สูตรด้วยครับ
ในสูตรผมไม่เจอ E7 ครับ เลยงง
สอบสูตรแถบสีแก้ไข 1.xlsx

Re: นับวันสายแบบมีเงื่อนไข

Posted: Thu Apr 06, 2023 7:50 pm
by snasui
:D ช่วยแจ้งตามโพสต์ #29 ไว้ในโพสต์นี้พอสังเขปว่าบรรทัดไหน เซลล์ไหนได้ค่าไม่ตรงตามที่ควรจะเป็นมาด้วยครับ

สำหรับ E7 ก่อนหน้านั้นผมโพสต์ไปโดยไม่ได้ตรึงตำแหน่งและกลับมา Update โพสต์ใหม่ หากหา E7 ในสูตรไม่เจอแล้วก็ไม่ต้องสนใจตรงนั้นครับ