วันจันทร์ที่ 11 สิงหาคม พ.ศ. 2557

Conditional formatting จัดรูปแบบเซลล์ด้วยสูตรตามเงื่อนไข

Conditional formatting จัดรูปแบบเซลล์ด้วยสูตรตามเงื่อนไข เมื่อคราวที่แล้วเราใช้ Conditional formatting เพื่อระบายเซลล์ด้วยสีสำหรับค่าที่... thumbnail 1 summary
Conditional formatting จัดรูปแบบเซลล์ด้วยสูตรตามเงื่อนไข

เมื่อคราวที่แล้วเราใช้ Conditional formatting เพื่อระบายเซลล์ด้วยสีสำหรับค่าที่ซ้ำกัน คราวนี้เราจะมาเรียนรู้อีกส่วนหนึ่ง นั่นคือ การกำหนดสูตรให้กับ Conditional formatting เพื่อให้เซลล์ต่างๆถูกจัดรูปแบบตามที่เราต้องการ โดยในตัวอย่างนี้จะเกี่ยวข้องกับตัวเลขเช่นเดิม นั่นคือเราจะสุ่มค่าตัวเลข 2 หลักขึ้นมาใส่ตั้งแต่เซลล์ E3:H17 จากนั้นเราจะกำหนดเงื่อนไขการระบายสีโดยใช้ Conditional formatting โดยมีเงื่อนไขว่า หากเซลล์ j4 มีค่าเท่ากับค่าในเซลล์ E3:H17 ก็ให้ระบายสีที่เซลล์นั้นๆที่อยู่ภายใน E3:H17 อย่างนี้เป็นต้น


ดูภาพด้านล่างประกอบจะได้เข้าใจมากขึ้นว่าเราต้องการให้ทำอะไรอย่างไร




จากภาพเราจะเห็นว่าหากเราป้อนที่เซลล์ j4 แล้วกด enter แล้วค่าในเซลล์ j4 ตรงกับค่าในเซลล์ E3:H17 มันก็จะระบายสีที่เซลล์นั้น จากภาพ เราป้อน 11 ให้ j4 ซึ่งปรากฏว่า E3:H17 มีค่าที่ตรงกันอยู่ 2 ค่า...ส่วนตรงช่อง j7 เป็นการใช้ฟังก์ชั่นรวมค่าที่ตรงกันเข้าด้วยกัน ได้ 22 เกิดจาก 11+11 อย่างนี้เป็นต้น

หากตรงกัน 3 ค่า ก็เอา 3 ค่านั้นมาบวกกัน หากตรงกันค่าเดียวก็เอาค่าเพียงค่าเดียวมาแสดงครับ

ขั้นตอนการออกแบบโปรแกรมนี้ 

1. ให้เราใช้เมาส์เลือกเซลล์ E3:H17 แล้วคลิกขวาเลือก Format cells…ที่แท็บ Number คลิกที่ Custom ตรงช่อง Type พิมพ์ 00 (กำหนดรูปแบบตัวเลขให้เซลล์ให้สามารถมี 0 นำหน้าตัวเลขได้) จากนั้นคลิก Ok ดังภาพด้านล่างนี้



2. ซลล์ E3 แล้วพิมพ์สูตร =RANDBETWEEN(0,9) แล้ว Auto fill สูตรจนถึง H17

3. เลือกเซลล์ E3:H17 แล้วคลิกที่แท็บ Home->Conditional formatting->New Rule…

4. ตรง Select a Rule Type : ให้คลิกที่ Use a formula to determine which cells to format

5. ในส่วน Format values where this formula is true: ให้พิมพ์สูตรว่า =IF(E3:E17=$J$4,true,false)

6. คลิกที่ปุ่ม format… แล้วคลิกที่ fill เลือกสีแดง แล้วกด ok เราจะเห็นในส่วนของ preview เป็นสีแดง แล้วก็กด ok อีกครั้ง เพื่อกลับมาที่ sheet1 ตามเดิม

7. ที่เซลล์ j7 ให้เราพิมพ์สูตรว่า =SUMIF(E3:H17,J4,E3:H17)

8. ที่เซลล์ j4 ให้เราลองป้อนค่าใดๆ แล้วกด Enter ดู
หากว่าค่าที่เราป้อนใน j4 ตรงกับค่าใดๆในเซลล์ E3:H17 Excel จะระบายสีแดงตรงค่าที่ตรงกับ j4 ให้ ส่วนที่เซลล์ j7 จะนำค่าที่ถูกระบายด้วยสีแดงมาแสดง หากมีค่าที่ตรงกันมากกว่า 1 ค่า ก็จะนำค่านั้นมาบวกกันก่อน

แต่ถ้าหากค่าที่เราป้อนในเซลล์ j4 ไม่ตรงกับค่าใดเลยที่อยู่ ใน E3:H17 ก็จะไม่เกิดอะไรขึ้นทั้งสิ้น และที่เซลล์ J7 ก็จะแสดงค่าเป็น 0

*Sumif เป็นฟังก์ชั่นที่บวกเลขเข้าด้วยกันตามเงื่อนไข ในตัวอย่างนี้จะตรวจสอบประมาณว่า ค่าใดๆในเซลล์ E3:H17 ที่ตรงกับค่า j4 จะให้นำมาบวกกันอย่างนี้เป็นต้น