เทพเอ็กเซล ช่วย "ปลุกเทพ Excel ในตัวคุณ"
0
  • No products in the cart.
Highlights : บทความแนะนำPython

หัดเขียนโปรแกรม Python สำหรับคนเป็น Excel มาก่อน : ตอนที่ 1

python for excel user

ถ้าให้เลือกการเรียนรู้เขียนโปรแกรมคอมพิวเตอร์ใหม่ซักอันนึง ผมคิดว่าภาษา Python เป็นอีกภาษาที่ได้เรียนรู้แล้วคุ้มค้า เรียนรู้ง่าย เป็นที่นิยม มีคนใช้งานเยอะ จึงมี Library ให้ใช้เยอะแยะไปหมด อีกอย่างมันเป็นภาษาที่ทำได้ทุกอย่าง จะทำ Web ทำ App เขียนเกม ทำ AI/Machine Learning หรือจะใช้ทำงานร่วมกับไฟล์ Excel ก็ย่อมได้

แต่บอกไว้ก่อนว่าแม้ผมจะมีความเชี่ยวชาญการใช้ Excel, Power Query, Power BI พอสมควร แต่ผมไม่ใช่ผู้เชี่ยวชาญภาษา Python หรือการเขียนโปรแกรมภาษาไหนๆ เลย

สิ่งที่ผมเชี่ยวชาญมันเป็น Concept ของ Functional Language ทั้งนั้นเลย ทั้งฟังก์ชัน Excel, M, DAX ส่วน VBA ใน Excel ที่เป็นการเขียนโปรแกรมผมก็ทำได้ในระดับนึง ไม่ได้เชี่ยวชาญอะไรมากนัก ก็เลยคิดว่า ถ้าจะหัดเขียนโปรแกรมแล้ว หัด Python ไปเลยดีกว่า ใช้ได้ยาวๆ ใช้ได้หลายเรื่อง 555

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

ผลพลอยได้จากการศึกษา Python นอกจากจะทำให้คุณ Logic ดีขึ้น และมีเครื่องมือทุ่นแรงมากขึ้นแล้ว มันยังจะทำให้คุณเข้าใจ Excel มากขึ้นได้ด้วยอย่างน่าอัศจรรย์ ไม่เชื่อก็ลองอ่านดูได้เลยครับ ^^

เพื่อไม่ให้เสียเวลา เรามาเริ่มกันเลย!

เรียกใช้งาน Python

การจะใช้งาน Python นั้น ทำได้หลายวิธีมากๆ มีทั้งแบบโหลดไฟล์มา Install ในเครื่อง และแบบใช้ Online ใน Website ได้เลย แต่ไม่ว่าจะแบบไหนมันก็ฟรีทั้งคู่! นี่คือข้อดีของ Python อย่างแรกเลย แถมใช้ได้หลายระบบปฏิบัติการด้วย (แต่ในบทความนี้ผมแนะนำให้ใช้ Google Colab ทำแบบ Online เลย ง่ายดี)

ถ้าจะโหลดมาลงในเครื่อง

  • ก็ต้องโหลดอันนี้ก่อน https://www.python.org/downloads/ (แนะนำว่าให้โหลด version ล่าสุดไปเลย)
  • จากนั้นผมแนะนำให้โหลดโปรแกรมพวก Code Editor ที่เอาไว้ช่วยเขียน Code ซึ่งมีหลายอันมากๆ แต่ส่วนตัวผมใช้ https://code.visualstudio.com/ ซึ่งก็มี extension ที่เป็น Python ให้ใช้ (รวมถึงภาษาอื่นด้วย แม้แต่ M Code ของ Power Query ก็มี)

ถ้าจะใช้ Python แบบ Online

  • ใช้ผ่านเว็บ https://www.python.org/shell/
  • ใช้ผ่าน Google Colab : https://colab.research.google.com/ (ผมแนะนำอันนี้ เพราะใช้งานง่ายดี ไม่ต้องลงโปรแกรม แค่กด new notebook ก็เข้าไปใช้งานได้แล้ว)

ลองใช้งาน Python

แสดงผลออกมาด้วย print และการอ้างอิงข้อความ

  • ถ้าเราใส่คำสั่ง (โดยกด + Code) ว่า print(123) แล้วสั่ง Run (กดปุ่ม Play) มันก็จะได้ผลลัพธ์ออกมาเป็น 123
  • คำสั่ง print ใช้ตัวพิมพ์เล็กนะ…
  • แต่ถ้าเรา print(แมว) มันจะ run ไม่ได้ ซึ่งต้องใส่ print(“แมว”) ถึงจะได้
  • สาเหตุเป็นเพราะมันคิดว่า แมว คือชื่อของตัวแปร ถ้าเราจะอ้างอิงถึงแมวที่เป็นข้อความ ต้องใส่ในเครื่องหมายคำพูด เช่น “แมว” (double quote) หรือ ‘แมว’ (single quote)
print(123)
print(แมว)
print("แมว")
print('แมว')
หัดเขียนโปรแกรม Python สำหรับคนเป็น Excel มาก่อน  : ตอนที่ 1 1

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

หัดเขียนโปรแกรม Python สำหรับคนเป็น Excel มาก่อน  : ตอนที่ 1 2

การใส่ค่าให้ตัวแปรและอ้างอิงตัวแปร

ใน Python เราสามารถใส่ค่าลงในที่บรรจุข้อมูลที่เรียกว่า “ตัวแปร” ได้ โดยที่ไม่ต้องประกาศหรือสร้างตัวแปรขึ้นมาก่อนเหมือนโปรแกรมอื่นๆ พอไม่ต้องประกาศก็ทำให้สามารถใส่ข้อมูลประเภทอะไรลงไปก็ได้ และเปลี่ยนได้เรื่อยๆ ตามต้องการ

ตัวแปร = ค่า สูตร หรือ คำสั่งที่ต้องการ

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

ข้อดีของตัวแปรคือ สามารถเรียกตัวแปรนั้นมาใช้งานต่อในบริบทอื่นได้อีก เช่นเดียวกับการอ้างอิง Cell / Name ในสูตรของ Excel เลย เช่น ถ้าใน Excel เราสามารถอ้างอิงค่าใน A1 มาใช้ต่อใน A2 ได้

เหมือนกับว่าเราใส่ค่า 10 ลงไปในตัวแปรชื่อว่า A1 (ซึ่งเอาจริงๆ แล้ว Cell Reference ก็คล้ายๆ เป็นชื่อตัวแปรแบบนึง ราถึงไม่สามารถตั้ง Defined Name ซ้ำกับ Cell Reference ได้ไง) ซึ่งเราสามารถเขียนเอาค่า A1*2 ใส่ลงไปในตัวแปร A2 แล้วแสดงค่ามันออกมาได้

หัดเขียนโปรแกรม Python สำหรับคนเป็น Excel มาก่อน  : ตอนที่ 1 3

ถ้าเป็นใน Python จะเขียนดังนี้ เห็นมะว่ามันทำได้เหมือนกันเลย!

  • ใส่ค่า 10 ลงไปในตัวแปรชื่อว่า A1
  • เอาค่า A1*2 ใส่ลงไปในตัวแปร A2 (ซึ่งจะได้ 10*2 = 20)
  • print ค่า A2 ออกมา เลยได้ 20 นั่นเอง
A1=10
A2=A1*2
print(A2)
หัดเขียนโปรแกรม Python สำหรับคนเป็น Excel มาก่อน  : ตอนที่ 1 4

การใส่ Comment

เราสามารถใส่ Comment ใน Code โดยใส่เครื่องหมาย # นำหน้าเพื่อที่จะเขียน note อะไรบางอย่างเกี่ยวกับ code ของเราไว้ได้ (คล้ายกับการคลิ๊กขวา Insert Comment/Note ใน Excel)

อะไรก็ตามที่อยู่หลังเครื่องหมาย # จะถูก Comment ไว้ทั้งหมด

# อันนี้คือ Comment (นำด้วย #) ซึ่งมันจะไม่สนใจ Code หลังเครื่องหมายนี้เลย
# จะใส่ comment ด้านบนของ code หรือ ด้านขวาก็ได้

test=123   #เอาค่า 123 ใส่ในตัวแปรชื่อ test
#test=456
print(test)
หัดเขียนโปรแกรม Python สำหรับคนเป็น Excel มาก่อน  : ตอนที่ 1 5

ในรูปผม print ค่าใน test ออกมาได้ 123 เพราะ codeบรรทัด test=456 ถูก comment ไว้ จึงไม่ถูก run นั่นเอง

ตัวอย่างการใช้ตัวแปร และ comment

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

firstName="Sira" #ใส่ข้อความว่า Sira ลงไปในตัวแปร firstName
#แสดงค่าในตัวแปร firstName ออกมา ซึ่งก็คือ Sira
print(firstName) 

tempNum=10 #ใส่ตัวเลข 10 ลงไปในตัวแปร tempNum
tempNum=5 #ใส่ตัวเลข 5 ทับลงไปในตัวแปร tempNum เหมือนเดิม
print(tempNum)

tempNum2=10 #ใส่ตัวเลข 10 ลงไปในตัวแปร tempNum2 
#เอาค่า tempNum2 ที่เก็บค่า 10 ไว้ ไปคูณ 2 ก็จะได้ 20 แล้วเอาใส่ลงไปในตัวแปรเดิม
tempNum2=tempNum2*2 
print(tempNum2)
หัดเขียนโปรแกรม Python สำหรับคนเป็น Excel มาก่อน  : ตอนที่ 1 6

นี่แหละคือประโยชน์ของการใส่ comment ครับ

จบตอนแรกแบบง่ายๆ

เดี๋ยวตอนต่อไปเราจะมาเรียนรู้เรื่องของประเภทข้อมูลใน Python ซึ่งจะมีหลากหลายกว่าใน Excel เพราะมันมีประเภทข้อมูลที่ไม่ได้มีค่าเดียว แต่เก็บข้อมูลเป็นชุดเลยด้วยครับ ซึ่งเป็น Concept ที่ Excel ปกติไม่มี (แต่มีใน Power Query นะ)

จะเป็นไง รออ่านต่อตอนต่อไปครับ!

แชร์ความรู้ให้เพื่อนๆ ของคุณ
  • 1.7K
  •  
  •  
  •  
  •  
  • 1.7K
  •  
  •  
  •  
  •  
Sira Ekabut
the authorSira Ekabut
• Microsoft Office Specialist : Excel ระดับ Expert • ก่อตั้งเว็บไซต์และ แฟนเพจเทพเอ็กเซล คนติดตาม 8 หมื่นคน+, คลิปวีดีโอ 1 ล้าน Views + • หนังสือ Best Seller คอมพิวเตอร์ : Excel Level Up! , จอมเวท เทพ Excel , Excel Power Up!วิทยากรใน SkillLane.com คอร์สออนไลน์ชั้นนำ / อบรม Excel ให้บริษัทชั้นนำ

Leave a Reply