วันพฤหัสบดีที่ 12 กุมภาพันธ์ พ.ศ. 2552

หัดเล่นๆให้เป็นเซียน

ขออัญเชิญบทไหว้ครู....

โอมมหาอิทธิศิษย์ประเสริฐ
ชื่นชูเชิดทางครูผู้ทอดไว้
"ทาง" "ล็อก" "กล" ฝนจนช่ำชำนาญไว
นโมมุ่งรุ่งชัยในศึกเทอญ
(เขียนโดย อาจารย์ ไฝ เชียงราย (ทัศน์ชัย โฆษิตพิพัฒน์))

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

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

ก็ไม่ทราบว่าจะเริ่มยังไง เอาเป็นว่าจะค่อยๆทยอยเขียนมันขึ้นมา เท่าที่จะพอนึกได้นึกออก และเวลาที่มี
วันนี้เปิดประเด็นอยากเขียนแต่จะเริ่มมันจริงๆจังๆเมื่อไหร่ ไม่รู้จริงๆ เอาเป็นว่า เมื่อไหร่ก็เมื่อนั้นก็แล้วกัน ว่างๆก็เข้ามาอ่าน อ่านฟรีไม่เสียตังค์ ไม่ต้องสมัครสมาชิก ให้ยุ่งยาก
เกือบลืม.. ผมไม่ตอบคำถาม Macro และ VBAนะครับ เป็นเหตุผลส่วนตัวประการหนึ่ง อีกอย่างคือ ไม่ค่อยจะมีความรู้กะเขาเท่าไหร่ ตอบผิดๆถูกๆก็ไม่ไหว มีหวังพวกสรรเสริญไปถึงบรรพบุรุษ

เอาเป็นว่า วันนี้ได้ ชื่อ เว็บมาแล้ว ส่วนเมื่อไหร่จะเริ่มเขียนจริงๆจังๆนั้น
ก็แล้วแต่เวลาจะเอื้ออำนวยก็แล้วกัน

วิธีการเขียน จะเน้นตัวอย่างโจทย์หลายๆแบบในแต่ละหัวข้อ
ทั้งตัวอย่างการนำไปใช้และวิธีการคิด
โดยอธิบายสั้นๆพอให้เข้าใจและให้ตัวอย่างมากพอสมควร

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

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

มาเริ่มกันเลย ....

ฟังก์ชั่น IF (ถ้า)

ใช้กำหนดเงื่อนไขเพื่อให้ Excel คำนวณหรือส่งผลให้เป็นไปตามเงื่อนไขที่กำหนด

ขออธิบายถึง การใช้ IF แบบชั้นเดียว หรือเงื่อนไขเดียวก่อนดังนี้

จากไวยากรณ์โครงสร้างของการใช้ IF ทั่วๆไป จะเขียนออกมาได้ประมาณนี้

=IF(logical_test,value_if_true,value_if_false)

อ่านแล้วอย่าเพิ่งงง จะขออธิบายด้วยภาษาง่ายๆดังต่อไปนี้

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

คอมม่าอันแรก ให้อ่านว่า ให้เป็น
คอมม่าอันที่สอง ให้อ่านว่า ถ้าไม่ใช่ให้เป็น

=IF(เซลล์อ้างอิง พร้อมเงื่อนไข , ให้เป็น.......,ถ้าไม่ใช่ให้เป็น.......)

มาดูตัวอย่างกันดังนี้
=IF(A1=0,0,B1/A1) อ่านว่า ถ้า A1 = 0 ให้เป็น 0 ถ้าไม่ใช่ให้เป็น B1/A1
=IF(A1>100,0,A1) อ่านว่า ถ้า A1 >100 ให้เป็น 0 ถ้าไม่ใช่ให้เป็น A1
=IF(A1>100,"Yes,"No") อ่านว่า ถ้า A1 >100 ให้เป็น Yes ถ้าไม่ใช่ให้เป็น No

ข้อกำหนดที่สำคัญอีกประการก็คือ ถ้าเงื่อนไขไม่ได้เป็นตัวเลข ให้ใส่เครื่องหมายคำพูด ปิดหน้าปิดหลังเงื่อนไขนั้นๆด้วยเสมอ
เช่น ในที่นี้ "Yes" "No" แบบนี้ไม่ใช่ตัวเลข ต้องบังคับใส่เครื่องหมายคำพูดกำกับไว้ด้วย ทุกกรณี
ไม่งั้น Excel จะอ่านค่าไม่ถูกตามที่เราต้องการ มันเป็นกฎ กติกาของ Excel จำเป็นต้องทำแบบนั้น ไม่ทำแบบนั้นไม่ได้

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



=IF(A2=A1,0,A2) อ่านว่า ถ้า A1 =A1 ให้เป็น 0 ถ้าไม่ใช่ให้เป็น A2
=IF(A2=A1,"",A2) อ่านว่า ถ้า A1 =A1 ให้เป็น ค่าว่าง ( Blank) ถ้าไม่ใช่ให้เป็น A2
=IF(A2<>A1,A2,"") อ่านว่า ถ้า A2 <> (ไม่เท่ากับ) A1 ให้เป็น A2 ถ้าไม่ใช่ให้เป็น ค่าว่าง(Blank)
=IF(A2="",B1,A2) อ่านว่า ถ้า A2 = ค่าว่าง (Blank) ให้เป็น B1 ถ้าไม่ใช่ให้เป็น A2
=IF(B13=B12,D12,D12+1) อ่านว่า ถ้า B13 = B12 ให้เป็น D12 ถ้าไม่ใช่ให้เป็น D12+1