Table — Aspose.Cells FOSS for Python API Reference

aspose-cells-foss predstavlja strukturirane tabele u Excelu (ListObjects) kroz Table klasu i TableCollection dostupan kao ws.list_objects. Tabele pružaju imenovane opsege, automatski filter, zaglavlja redova i stilizovanje redova u trakama ugrađeno u XLSX format.

: aspose.cells_foss

from aspose.cells_foss import TableStyleInfo, TableColumn

TableStyleInfo

Opisuje vizuelni stil primenjen na tabelu (trake, isticanje prve/poslednje kolone).

TableStyleInfo()

namestrNaziv stila Excel tabele (npr., "TableStyleMedium9").
show_first_columnboolTrue za primenu posebnog formatiranja na prvu kolonu.
show_last_columnboolTrue za primenu posebnog formatiranja na poslednju kolonu.
show_row_stripesboolTrue za primenu naizmeničnog obeležavanja redova.
show_column_stripesboolTrue za primenu naizmeničnog obojavanja kolona.

TableColumn

Opisuje pojedinačnu kolonu unutar tabele.

TableColumn(col_id: int, name: str)
col_idint1-based column identifier within the table (not the worksheet column index).
namestrTekst zaglavlja kolone. Mora biti jedinstven unutar tabele.

idintIdentifikator kolone (samo za čitanje).
namestrTekst zaglavlja kolone.
totals_row_functionstrAgregatna funkcija prikazana u redu sa ukupnim vrednostima: 'none', 'sum', 'average', 'count', 'countNums', 'max', 'min', 'stdDev', 'var', 'custom'.
totals_row_labelstrTekst oznake prikazan u ćeliji sa ukupnim vrednostima kada totals_row_function je 'none'.
totals_row_formulastrPrilagođena formula koja se koristi kada totals_row_function je 'custom'.

Table objekti se ne konstrušu direktno. Koristite ws.list_objects.add(...) ili ws.list_objects.add_with_range(...).

namestrInterni naziv tabele (mora biti jedinstven u radnoj svesci, bez razmaka).
display_namestrNaziv prikazan u Excel Name Box‑u.
refstrOpseg ćelija koji obuhvata tabela (npr., "A1:D10").
has_headersboolTrue ako prvi red opsega sadrži zaglavlja kolona.
show_totals_rowboolTrue za prikazivanje reda sa agregiranim ukupcima na dnu tabele.
show_auto_filterboolTrue da prikaže strelice padajućeg menija automatskog filtera u zaglavlju reda.
table_style_infoTableStyleInfoPodešavanja vizuelnog stila (prugovanje, isticanje kolona).
columnslist[TableColumn]Uređeni spisak TableColumn objekata (po jedan po koloni tabele).

TableCollection

TableCollection se pristupa kao ws.list_objects. Upravlja svim strukturiranim tabelama na radnom listu.

add

ws.list_objects.add(
    start_row: int,
    start_col: int,
    end_row: int,
    end_col: int,
    has_headers: bool = True,
    name: str | None = None
) -> Table

Kreira tabelu nad zadatim opsegom ćelija. Svi indeksi su 0-based. Ako name je None, ime se generiše automatski (npr., "Table1").

add_with_range

ws.list_objects.add_with_range(
    cell_range: str,
    name: str | None = None,
    has_headers: bool = True
) -> Table

Kreira tabelu iz A1‑stila niza opsega (npr., "A1:D10"). Čitljivije od add() za hardkodirane opsege.

Svojstva i iteracija

countBroj tabela na ovom radnom listu (samo za čitanje).
__len__()
count.
__iter__()Iterira kroz sve Table objekte.
__getitem__(index)Vraća Table na nultom index.

Sledeći primer upisuje skup podataka o inventaru proizvoda i pretvara ga u stilizovanu Excel tabelu sa redom za ukupne vrednosti.

from aspose.cells_foss import Workbook

wb = Workbook()
ws = wb.worksheets[0]
ws.name = "Inventory"

# Write header and data rows
headers = ["SKU", "Product", "Qty", "Unit Price"]
rows = [
    ["A001", "Widget Alpha", 150, 12.99],
    ["A002", "Widget Beta",   80, 24.50],
    ["A003", "Gadget Gamma",  45, 49.99],
    ["A004", "Gadget Delta",  210, 8.75],
]

for col, h in enumerate(headers):
    ws.cells[0][col].put_value(h)
for row_i, row in enumerate(rows, start=1):
    for col_i, val in enumerate(row):
        ws.cells[row_i][col_i].put_value(val)

# Create a table over A1:D5
table = ws.list_objects.add_with_range("A1:D5", name="InventoryTable")

# Configure style
table.table_style_info.name = "TableStyleMedium9"
table.table_style_info.show_row_stripes = True
table.table_style_info.show_first_column = False
table.table_style_info.show_last_column = False

# Add a totals row with sum on Qty and Unit Price columns
table.show_totals_row = True
table.columns[2].totals_row_function = "sum"    # Qty
table.columns[3].totals_row_function = "sum"    # Unit Price
table.columns[0].totals_row_label = "Total"

wb.save("inventory_table.xlsx")

Vidi i

 Српски