สร้าง Pivot Table ใน Excel โดยใช้ Python

ตาราง Pivot ในสเปรดชีต Excel ใช้เพื่อสรุปข้อมูลในลักษณะโต้ตอบ สมมติว่าคุณมีข้อมูลของใบแจ้งหนี้จำนวนหนึ่ง และคุณต้องการให้รวมจัดกลุ่มตามลูกค้าหรือผลิตภัณฑ์ ตารางเดือยเข้ามามีบทบาทในกรณีเช่นนี้ ในบทความนี้ คุณจะได้เรียนรู้วิธีจัดการกับ pivot table ใน Excel ใน Python โดยเฉพาะอย่างยิ่งคุณจะได้รู้วิธีสร้างตารางเดือยใน Excel ใน Python นอกจากนี้ เราจะสาธิตวิธีการจัดรูปแบบเซลล์ในตาราง Pivot ของ Excel โดยทางโปรแกรม

Python Library เพื่อสร้าง Pivot Table ใน Excel - ดาวน์โหลดฟรี

Aspose.Cells for Python คือไลบรารีความเร็วสูง ซึ่งออกแบบมาเพื่อสร้างและประมวลผลไฟล์ Excel เราจะใช้ไลบรารีนี้เพื่อสร้างตารางเดือยในสเปรดชีต Excel

คุณสามารถ ดาวน์โหลด แพ็คเกจหรือติดตั้งจาก PyPI โดยใช้คำสั่ง pip ต่อไปนี้

pip install aspose-cells

สร้าง Pivot Table ใน Excel ด้วย Python

ต่อไปนี้เป็นขั้นตอนในการสร้าง pivot table ใน Excel โดยใช้ Python

  • สร้างใหม่หรือโหลดไฟล์ Excel ที่มีอยู่โดยใช้คลาสสมุดงาน
  • เติมข้อมูลในแผ่นงาน (ไม่บังคับ)
  • รับคอลเลกชันของตารางเดือยลงในวัตถุ PivotTableCollection โดยใช้เมธอด Worksheet.getPivotTables()
  • เพิ่มตารางเดือยใหม่โดยใช้เมธอด PivotTableCollection.add(string, string, string) และรับข้อมูลอ้างอิงในวัตถุ
  • ตั้งค่าตัวเลือกต่างๆ เช่น ผลรวมทั้งหมด การจัดรูปแบบ เป็นต้น
  • เพิ่มเขตข้อมูลลงในพื้นที่โดยใช้เมธอด PivotTable.addFieldToArea(int, int)
  • บันทึกสมุดงานโดยใช้วิธีการ Workbook.save(string)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มตารางเดือยใน Excel ใน Python

import jpype
import asposecells

jpype.startJVM()
from asposecells.api import Workbook, PivotFieldType

# สร้างอินสแตนซ์วัตถุสมุดงาน
workbook = Workbook()

# เพิ่มแผ่นงานใหม่และรับข้อมูลอ้างอิง
sheetIndex = workbook.getWorksheets().add()
worksheet = workbook.getWorksheets().get(sheetIndex)

# รับเซลล์ของแผ่นงาน
cells = worksheet.getCells()

# ตั้งค่าให้กับเซลล์
cell = cells.get("A1")
cell.setValue("Sport")
cell = cells.get("B1")
cell.setValue("Quarter")
cell = cells.get("C1")
cell.setValue("Sales")

cell = cells.get("A2")
cell.setValue("Golf")
cell = cells.get("A3")
cell.setValue("Golf")
cell = cells.get("A4")
cell.setValue("Tennis")
cell = cells.get("A5")
cell.setValue("Tennis")
cell = cells.get("A6")
cell.setValue("Tennis")
cell = cells.get("A7")
cell.setValue("Tennis")
cell = cells.get("A8")
cell.setValue("Golf")

cell = cells.get("B2")
cell.setValue("Qtr3")
cell = cells.get("B3")
cell.setValue("Qtr4")
cell = cells.get("B4")
cell.setValue("Qtr3")
cell = cells.get("B5")
cell.setValue("Qtr4")
cell = cells.get("B6")
cell.setValue("Qtr3")
cell = cells.get("B7")
cell.setValue("Qtr4")
cell = cells.get("B8")
cell.setValue("Qtr3")

cell = cells.get("C2")
cell.setValue(1500)
cell = cells.get("C3")
cell.setValue(2000)
cell = cells.get("C4")
cell.setValue(600)
cell = cells.get("C5")
cell.setValue(1500)
cell = cells.get("C6")
cell.setValue(4070)
cell = cells.get("C7")
cell.setValue(5000)
cell = cells.get("C8")
cell.setValue(6430)

# รับตาราง Pivot ทั้งหมด
pivotTables = worksheet.getPivotTables()

# เพิ่ม Pivot Table ใหม่ลงในแผ่นงาน
index = pivotTables.add("=A1:C8", "E3", "PivotTable2")

# เข้าถึงอินสแตนซ์ของ Pivot Table ที่เพิ่มเข้ามาใหม่
pivotTable = pivotTables.get(index)

# ซ่อนผลรวมทั้งหมดสำหรับแถว
pivotTable.setRowGrand(False)

# ลากฟิลด์แรกไปยังพื้นที่แถว
pivotTable.addFieldToArea(PivotFieldType.ROW, 0)

# ลากฟิลด์ที่สองไปยังพื้นที่คอลัมน์
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 1)

# ลากช่องที่สามไปยังพื้นที่ข้อมูล
pivotTable.addFieldToArea(PivotFieldType.DATA, 2)

# บันทึกไฟล์ Excel
workbook.save("CreatePivotTable.xlsx")

ข้อมูล Excel

แหล่งข้อมูลสำหรับ excel pivot table

ตารางเดือย

สร้าง pivot table ใน excel ใน java

จัดรูปแบบเซลล์ใน Excel Pivot Tables ใน Python

ต่อไปนี้เป็นขั้นตอนในการจัดรูปแบบเซลล์ในตาราง Pivot ของ Excel ใน Python

  • สร้างใหม่หรือโหลดไฟล์ Excel ที่มีอยู่โดยใช้คลาสสมุดงาน
  • เติมข้อมูลแผ่นงาน (ไม่บังคับ)
  • รับข้อมูลอ้างอิงของแผ่นงานซึ่งเป็นที่ตั้งของตารางเดือย
  • รับการอ้างอิงของตารางเดือยตามดัชนีโดยใช้เมธอด Worksheet.getPivotTables().get(index)
  • สร้างสไตล์ใหม่โดยใช้เมธอด Workbook.createStyle() และรับข้อมูลอ้างอิง
  • กำหนดคุณสมบัติที่ต้องการของวัตถุสไตล์
  • กำหนดวัตถุสไตล์ให้กับตารางเดือย
  • บันทึกสมุดงานโดยใช้วิธีการ Workbook.save(string)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีจัดรูปแบบตาราง Pivot ของ Excel ใน Python

import jpype
import asposecells

jpype.startJVM()
from asposecells.api import Workbook, BackgroundType, Color

# สร้างวัตถุสมุดงานจากไฟล์ Excel ต้นฉบับที่มีตารางเดือย
workbook = Workbook("pivotTable_test.xlsx")

# เข้าถึงแผ่นงานโดยใช้ชื่อ
worksheet = workbook.getWorksheets().get("PivotTable")

# เข้าถึงตารางเดือยตามดัชนี
pivotTable = worksheet.getPivotTables().get(0)

# สร้างสไตล์วัตถุด้วยสีพื้นหลังเป็นสีฟ้าอ่อน
style = workbook.createStyle()
style.setPattern(BackgroundType.SOLID)
style.setBackgroundColor(Color.getLightBlue())

# จัดรูปแบบตารางเดือยทั้งหมดด้วยสีฟ้าอ่อน
pivotTable.formatAll(style)

# สร้างวัตถุสไตล์อื่นด้วยสีเหลือง
style = workbook.createStyle()
style.setPattern(BackgroundType.SOLID)
style.setBackgroundColor(Color.getYellow())

# จัดรูปแบบเซลล์ของแถวแรกของตารางเดือยด้วยสีเหลือง
columns = [0, 1, 2, 3, 4]
for x in columns:
  pivotTable.format(1, x, style)

# บันทึกวัตถุสมุดงาน
workbook.save("output.xlsx")

Python Library เพื่อสร้างตาราง Pivot ของ Excel - รับใบอนุญาตฟรี

คุณสามารถ รับใบอนุญาตชั่วคราวได้ฟรี เพื่อใช้ Aspose.Cells for Python โดยไม่มีข้อจำกัดในการประเมิน

บทสรุป

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

ดูสิ่งนี้ด้วย