קוד פתוח של Python API עבור Google Sheets

כתוב קבצי גיליון אלקטרוני של Excel XML באמצעות ספריית Python בקוד פתוח.

XlsxWriter הוא API של python בקוד פתוח לכתיבת קבצים בפורמט קובץ Excel 2007+ XLSX. באמצעות ה-API תוכלו לכתוב טקסט, נוסחאות, מספרים והיפר-קישורים למספר גליונות עבודה. יתר על כן, ה-API מאפשר הכנסת תרשימים, תאים מיזוגים, עיצוב תאים, החלת מסננים, נתוני אימות, הכנסת תמונות PNG/JPEG/BMP/WMF/EMF, שימוש במחרוזות עשירות בפורמטים רבים ועוד.

XlsxWriter טוען שהוא מספק יותר תכונות Excel מכל מודולי פיתון חלופיים. ה-API מספק קצב דיוק גבוה תוך יצירת קבצי אקסל חדשים, ברוב המקרים הקבצים המיוצרים באמצעות XlsxWriter שווים ב-100% לקבצים המיוצרים על ידי אקסל.

Previous Next

תחילת העבודה עם XlsxWriter

עליך להתקין את Python 2.7 ומעלה במערכת שלך כדי להפעיל את XlsxWriter בצורה חלקה. הדרך המומלצת להתקנה באמצעות PIP. אנא השתמש בפקודה הבאה.

התקן XlsxWriter באמצעות PIP Command

pip install XlsxWriter

צור גיליון אלקטרוני באמצעות ספריית Python

XlsxWriter API מאפשר יצירת גיליונות אלקטרוניים של Microsoft באמצעות Python ומודול XlsxWriter. זה מאפשר למתכנתי תוכנה ליצור גיליון אלקטרוני ריק באמצעות שיטת XlsxWriter.Workbook() . אתה יכול להוסיף גליונות עבודה לחוברת העבודה שלך באמצעות שיטת workbook.add_worksheet() . לאחר הוספת גליונות העבודה, ה-API מאפשר מגוון רחב של תכונות חינמיות לעבוד עם גיליונות אקסל באמצעות Python.

יצירת שינוי גיליון אלקטרוני דרך Python

import xlsxwriter
# Create an new Excel file and add a worksheet.
workbook = xlsxwriter.Workbook('demo.xlsx')
worksheet = workbook.add_worksheet()
# Widen the first column to make the text clearer.
worksheet.set_column('A:A', 20)
# Add a bold format to use to highlight cells.
bold = workbook.add_format({'bold': True})
# Write some simple text.
worksheet.write('A1', 'Hello')
# Text with formatting.
worksheet.write('A2', 'World', bold)
# Write some numbers, with row/column notation.
worksheet.write(2, 0, 123)
worksheet.write(3, 0, 123.456)
workbook.close()

הוסף תרשימים ב-XLSX באמצעות Python

ספריית גיליונות אלקטרוניים של קוד פתוח XlsxWriter מאפשרת למפתחי תוכנה להוסיף תרשימים בפורמט קובץ XLSX תוך שימוש בכמה שורות קוד בלבד. לאחר יצירת גליון העבודה החדש שלך באקסל, תוכל להוסיף תרשים באמצעות שיטת workbook.add_chart()‎. באמצעות ה-API של Python, אתה יכול להוסיף תרשימי שטח, תרשימי עמודות, תרשימי עמודות, תרשימי קווים, תרשימי עוגה, תרשימי סופגנייה, תרשימי פיזור, תרשימי מניות ותרשימי מכ"ם בחינם.

הוסף תרשים בר LS Spreadsheet דרך הספרייה Python

import xlsxwriter
workbook = xlsxwriter.Workbook('chart_bar.xlsx')
worksheet = workbook.add_worksheet()
bold = workbook.add_format({'bold': 1})
# Add the worksheet data that the charts will refer to.
headings = ['Number', 'Batch 1', 'Batch 2']
data = [
    [2, 3, 4, 5, 6, 7],
    [10, 40, 50, 20, 10, 50],
    [30, 60, 70, 50, 40, 30],
]
worksheet.write_row('A1', headings, bold)
worksheet.write_column('A2', data[0])
worksheet.write_column('B2', data[1])
worksheet.write_column('C2', data[2])
# Create a new bar chart.
chart1 = workbook.add_chart({'type': 'bar'})
# Configure the first series.
chart1.add_series({
    'name':       '=Sheet1!$B$1',
    'categories': '=Sheet1!$A$2:$A$7',
    'values':     '=Sheet1!$B$2:$B$7',
})

עבודה עם נוסחאות Excel באמצעות Python

ספריית XlsxWriter מעניקה למפתחים את היכולת לכתוב נוסחאות בתוך פורמט קובץ Microsoft Excel באופן תכנותי. אתה יכול פשוט להוסיף נוסחה לקובץ שלך באמצעות שיטת workheet.write_forumula(). אקסל מאחסן נוסחאות בפורמט של הגרסה האנגלית בארה"ב, ולכן הנוסחאות חייבות להיות בפורמט האנגלי בארה"ב.

הוספת פורמולה ארגונית בספריית Python

import xlsxwriter
# Create a new workbook and add a worksheet
workbook = xlsxwriter.Workbook('array_formula.xlsx')
worksheet = workbook.add_worksheet()
# Write some test data.
worksheet.write('B1', 500)
worksheet.write('B2', 10)
worksheet.write('B5', 1)
worksheet.write('B6', 2)
worksheet.write('B7', 3)
worksheet.write('C1', 300)
worksheet.write('C2', 15)
worksheet.write('C5', 20234)
worksheet.write('C6', 21003)
worksheet.write('C7', 10000)
# Write an array formula that returns a single value
worksheet.write_formula('A1', '{=SUM(B1:C1*B2:C2)}')
# Same as above but more verbose.
worksheet.write_array_formula('A2:A2', '{=SUM(B1:C1*B2:C2)}')
# Write an array formula that returns a range of values
worksheet.write_array_formula('A5:A7', '{=TREND(C5:C7,B5:B7)}')
workbook.close()
 עִברִית