Python มีไลบรารีอีกมากมายสำหรับทำงานกับ Microsoft Excel บทความนี้จะสอนใช้ xlsxwriter เพื่อสร้างไฟล์ .xlsx ใหม่และเขียนข้อมูลลงไป (ไม่สามารถแก้ไขไฟล์ที่มีอยู่แล้วได้)
1. เขียนข้อมูลทีละเซลล์
สร้าง Workbook เพิ่ม Worksheet แล้วใช้เมธอด write() ระบุที่อยู่เซลล์ (เช่น 'A1', 'B2') และค่าที่ต้องการเขียน
ตัวอย่างโค้ด
import xlsxwriter
# สร้างไฟล์ xlsx
xlsx_File = xlsxwriter.Workbook('Schedule.xlsx')
# เพิ่ม worksheet
sheet_schedule = xlsx_File.add_worksheet()
# เขียนข้อมูลทีละเซลล์
sheet_schedule.write('A1', 'Day')
sheet_schedule.write('A2', 'Mon')
sheet_schedule.write('A3', 'Tue')
sheet_schedule.write('B1', 'Schedule')
sheet_schedule.write('B2', 'Final Exam')
sheet_schedule.write('B3', 'party')
# ปิดไฟล์ (สำคัญ: ต้องปิดเพื่อบันทึกจริง)
xlsx_File.close()
ผลลัพธ์

2. เขียนข้อมูลแบบแถว (Row-wise) ด้วยลูป
กำหนดแถวและคอลัมน์เริ่มต้น แล้ววนลูปเขียนข้อมูลจากลิสต์ โดยเพิ่มหมายเลขแถวทีละ 1
ตัวอย่างโค้ด
import xlsxwriter
xlsx_File = xlsxwriter.Workbook('Days.xlsx')
sheet_days = xlsx_File.add_worksheet()
row = 1
column = 1
days = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
# วนลูปเขียนแถวต่อเนื่อง
for day in days:
sheet_days.write(row, column, day)
row += 1
xlsx_File.close()
ผลลัพธ์

หมายเหตุ: xlsxwriter ไม่รองรับการเปิดไฟล์ที่มีอยู่แล้วเพื่อแก้ไข หากต้องการแก้ไขไฟล์เดิม ให้ใช้ openpyxl แทน