ผมได้โจทย์มาอีกแล้ว เฮ้อ.. คิดซะว่าโจทย์ยากๆ มาพร้อมกับโบนัสก้อนใหญ่ๆ (รึเปล่านะ) วันนี้ได้รับโจทย์อยาก Capture หน้า Excel ที่มีประมาณเกือบ 200 ตาราง ใช่เกือบ 200 ตาราง 🤢 แล้วใส่ใน Power Point ให้หน่อย แบบนี้ต้องพึ่งการเขียนโปรแกรมแล้วละ วันนี้เราเลยจะมาบอกวิธี จับภาพตารางใน Excel แล้วส่งไปใส่ PowerPoint ซึ่งเหมาะสำหรับคนที่อยากลดขั้นตอน "คัดลอก-วาง" แบบเดิมๆ พร้อมจะเริ่มลุยแล้วใช่ไหม? เตรียม Python, Excel, PowerPoint และจินตนาการให้พร้อม แล้วไปกันเลย! สิ่งที่ต้องเตรียม Python: แน่นอน ใช้ตัวโปรดตัวเก่งของเรา ไลบรารี Win32com: คู่หูพระเอกของเรา ติดตั้งด้วยคำสั่ง pip install pywin32 ไฟล์ Excel: เอาไว้เป็นเหยื่อ PowerPoint: เป้าหมายของงานนี้ ก่อนไปเริ่มเขียนโปรแกรม เรามี Excel ตัวอย่าง 3 Sheet แบบนี้นะ สิ่งที่เราต้องรู้คือแต่ละ Sheet ชื่ออะไร ต้องการ Capture จากเซลล์ไหนถึงเซลล์ไหน เช่น A1:X100 เป็นต้นนะ เราจะได้ระบุในโปรแกรม Python ได้ มาลุยกัน! จะจับข้อมูลจากไฟล์ Excel "D:\Medical office startup expenses 1.xlsx" ที่มี 3 Sheet และนำข้อมูลไปใส่ใน PowerPoint โดยใช้ Python และ Win32com แบบง่ายๆ และตลกๆ เหมือนเดิมครับ Code Python สำหรับจัดการ Excel และ PowerPoint คำอธิบายโค้ด การกำหนด Sheet และช่วงข้อมูล ใช้ Dictionary เพื่อจับคู่ชื่อ Sheet กับช่วงข้อมูลที่ต้องการ การตั้งค่าตำแหน่งของรูปภาพ ใช้คำสั่ง Shapes[1].Top และ Shapes[1].Left เพื่อปรับตำแหน่งรูปภาพใน Slide การตั้งชื่อ Slide เพิ่มชื่อ Slide ให้ตรงกับชื่อ Sheet การตรวจสอบข้อผิดพลาดในแต่ละขั้นตอน มี try-except เพื่อป้องกันข้อผิดพลาดที่อาจเกิดจาก Sheet หรือช่วงข้อมูลที่ไม่ถูกต้อง ผลลัพธ์ หลังจากรันโค้ดนี้ จะได้ PowerPoint พร้อม 3 สไลด์: Startup Overview: ตารางแสดงข้อมูลตั้งแต่เซลล์ A1 ถึง F42 Expenses: รายละเอียดค่าใช้จ่ายจาก A1 ถึง F62 Profit & Loss: ผลกำไรและขาดทุนจาก A1 ถึง O22 ผลลัพธ์ที่ได้ก็จะได้เป็นรูปภาพแปะอยู่ใน Power Point หลังจากนั้นก็ต้องมาจัดขนาดเสียหน่อยนะครับ ใน Code Python ไม่ได้จัดขนาดของรูปภาพเอาไว้ คิดว่ามาจัดเองน่าจะเร็วกว่าการลองผิดลองถูกใน Code Python นะ (แต่ถ้ามีเวลาแล้วงานนี้ต้องทำซ้ำๆ ก็เป็นสิ่งที่ควรทำนะครับ) ความสนุกระหว่างทำ Fail ที่เจอ: ลืม Save Excel ก่อนรันโค้ด (ข้อมูลไม่สมบูรณ์)! ต้องรีบแก้ไข! ความฮา: เคยตั้งสไลด์ซ้ำกันหมด เลยดูเหมือนส่ง PowerPoint ที่มีแค่ "Copy-Paste 3 รอบ" 🤣 ลองนำไปใช้ดู แล้วคุณจะรู้ว่าการทำงานแบบโปรแกรมเมอร์มันทั้งสนุกและช่วยประหยัดเวลา! เร็วจริงๆ นะ งานจริงๆ Capture Excel Sheet กว่า 200 Sheet ใช้เวลาทำจริงๆ 6-7 ชั่วโมง พอเขียนโปรแกรมหน่อย เหลือแค่ 2-3 ชั่วโมง รวมจัดภาพใน Power Point แล้วด้วยนะ🎉 ภาพโดยนักเขียน หมีขั้วโลก ทอดกรอบ〔´(エ)`〕 เปิดประสบการณ์ความบันเทิงที่หลากหลายสุดปัง บน App TrueID โหลดเลย ฟรี !