File handling XLSX Spreadsheets

XLSX File Handling

The klyn.io.xlsx package reads and writes XLSX workbook files with worksheets, cells, column widths, simple formats, and charts.

Format and Trademark Note
XLSX is a file format

XLSX refers here to the Office Open XML spreadsheet package format. Product names such as Microsoft Excel are trademarks of their respective owners. Klyn's XLSX support targets the file format and does not imply endorsement, certification, or affiliation with those owners.

Imports
import klyn.io.xlsx
Create a Workbook

Open a workbook in create mode, add worksheets, write cells with A1-style references, and let the try resource block save and close the file.

import klyn.io.xlsx

try workbook = Workbook("report.xlsx", WorkbookMode.CREATE | WorkbookMode.OVERWRITE):
    sheet = workbook.addWorksheet("Data")
    sheet.setColumn("A:A", 22)
    sheet.setColumn("B:B", 14)

    header = workbook.addFormat({
        "bg_color": "gray",
        "font_color": "white",
        "bold": true
    })

    sheet.write("A1", "Name", header)
    sheet.write("B1", "Score", header)
    sheet.write("A2", "Ada")
    sheet.write("B2", 42)
Read a Workbook

The default mode is WorkbookMode.READ. Access worksheets by name or index, then read cell values from A1-style references.

import klyn.io.xlsx

try workbook = Workbook("report.xlsx"):
    sheet = workbook.worksheet("Data")
    print(sheet.read("A1"))
    print(sheet.read("B2"))
Columns and Charts

Worksheet.writeColumn writes a vertical range from a starting cell. A workbook can create a chart and insert it into a worksheet.

import klyn.io.xlsx

try workbook = Workbook("scores.xlsx", WorkbookMode.CREATE | WorkbookMode.OVERWRITE):
    sheet = workbook.addWorksheet("Scores")
    sheet.writeColumn("A1", [10, 40, 50, 20, 10, 50])

    chart = workbook.addChart({"type": "line"})
    chart.addSeries({"values": "=Scores!$A$1:$A$6"})
    sheet.insertChart("C1", chart)
Runnable Sample

The distribution includes a complete XLSX export sample in samples/io. It writes a workbook with a people directory, a monthly activity sheet, and a line chart built from the second sheet.

klyn samples/io/ExportXLSX.kn
Practical Limits

The API is designed for deterministic exports and lightweight reads. Keep generated workbooks simple: explicit worksheets, explicit cells, predictable formatting, and typed values. For very large tabular exports, measure memory and startup cost before choosing XLSX over CSV.