สอนเขียนภาษา Python เก็บข้อมูลลงใน Excel แบบรับค่าจากผู้ใช้งาน ตัวอย่างโปรแกรมจะรับค่าชื่อจากผู้ใช้งาน และบันทึกข้อมูลลงใน Excel โดยจะรับค่า และบึนทึกเรื่อยๆ จนกว่าจะไม่ได้กรอกข้อมูลเข้ามา สามารถเขียนโปรแกรมได้ดังนี้
ตัวอย่าง วิธีติดตั้ง openpyxl ด้วยโปรแกรม pip
pip install openpyxl
ตัวอย่าง Python เก็บข้อมูลลงใน Excel แบบรับค่าจากผู้ใช้งาน
import openpyxl
wb = openpyxl.load_workbook("test.xlsx")
sheet = wb.active
print('กรณีต้องการออกจากการบันทึกให้กด enter โดยไม่ต้องกรอกชื่อ')
i = 1
while i == 1 :
name = input('กรุณากรอกชือ : ')
if name != '' :
max_row = sheet.max_row
sheet.cell(row = max_row + 1, column = 1).value = name
wb.save("test.xlsx")
else:
i = 0
print('บันทึกข้อมูลลงไฟล์ excel เรียบร้อยแล้ว')
ผลลัพธ์
กรณีต้องการออกจากการบันทึกให้กด enter โดยไม่ต้องกรอกชื่อ
กรุณากรอกชือ : Python
กรุณากรอกชือ : Ruby
กรุณากรอกชือ : Java
กรุณากรอกชือ :
บันทึกข้อมูลลงไฟล์ excel เรียบร้อยแล้ว
1. ติดตั้ง และ import module openpyxl เพื่อใช้งานคำสั่งที่เกี่ยวกับการจัดการ Excel
2. โหลดไฟล์ Excel ด้วยคำสั่ง load_workbook และอ่าน sheet ที่ทำงานด้วยคำสั่ง active
3. กำหนดให้ตัวแปร i เริ่มต้นเท่ากับ 1 เพื่อใช้สำหรับหยุดการทำงานของ loop while
4. ใช้ loop while วนรับค่าจากผู้ใช้งาน และเก็บไว้ที่ตัวแปร name
5. กรณีถ้าตัวแปร name มีค่าจะเข้าไปทำงานที่ปีกกาแรก โดยจะเป็นการเก็บข้อมูลลงไฟล์ Excel
6. ตัวแปร max_row = sheet.max_row จะอ่านว่าปัจจุบันข้อมูลในไฟล์ Excel มีกี่ row และจะบันทึกต่อจาก row ปัจจุบัน ด้วยการกำหนด row = max_row + 1
7. หากตัวแปร name มีค่าว่างเปล่า ให้ตัวแปร i เท่ากับ 0 เพื่อให้ loop while หยุดการทำงาน