Table

Table(*参数, **options)

表对象是所使用引擎的成员tables集合访问它们:

>>> import xlwings as xw
>>> sht = xw.books['Book1'].sheets[0]
>>> sht.tables[0]  # or sht.tables['TableName']
<Table 'Table 1' in <Sheet [Book1]Sheet1>>

添加于版本 0.21.0。

属性 api

返回所使用引擎的原生对象 (pywin32appscriptobj) 使用的引擎的成员。

属性 数据主体范围

返回一个 xlwings 范围对象,表示值的范围,不包括标题行。

属性 显示名称

返回或设置指定表对象的显示名称。

属性 标题行范围

返回一个 xlwings 范围对象,表示标题行的范围。

属性 插入行范围

返回一个 xlwings 范围对象,表示将要插入数据的行。这仅适用于空表,否则将返回。None

属性 名称

返回或设置表格的名称。

属性 父级

返回表格的父对象。

属性 范围

返回表格的 xlwings 范围对象。

调整大小(范围)

通过提供一个 xlwings 范围对象来调整表格大小。

添加于版本 0.24.4。

属性 显示自动筛选

设置为打开或关闭自动筛选功能。TrueFalse(读/写 布尔值)

属性 显示标题

显示或隐藏标题(读/写)。

属性 显示表格样式列条纹

返回或设置是否使用列条纹表格样式(读/写布尔值)。

属性 显示表格样式首列

返回或设置首列是否已格式化(读/写布尔值)。

属性 显示表格样式末列

返回或设置末列是否显示(读/写布尔值)。

属性 显示表格样式行条纹

返回或设置是否使用行条纹表格样式(读/写布尔值)。

属性 显示总计

获取或设置一个布尔值以显示/隐藏总计行。

属性 表格样式

获取或设置表格样式。参见Tables.add可能的值。

属性 总计行范围

返回一个代表总计行的 xlwings 范围对象。

更新(数据, 索引=True)

使用提供的数据更新 Excel 表格。目前仅限于 DataFrame。

在版本 0.24.0 中更改。

参数

数据pandas DataFrame

目前仅限于 pandas DataFrame。

索引布尔值,默认为True

是否将 pandas DataFrame 的索引写入 Excel 表格。

返回值

Table

示例

import pandas as pd
import xlwings as xw

sheet = xw.Book('Book1.xlsx').sheets[0]
table_name = 'mytable'

# Sample DataFrame
nrows, ncols = 3, 3
df = pd.DataFrame(data=nrows * [ncols * ['test']],
                  columns=['col ' + str(i) for i in range(ncols)])

# Hide the index, then insert a new table if it doesn't exist yet,
# otherwise update the existing one
df = df.set_index('col 0')
if table_name in [table.name for table in sheet.tables]:
    sheet.tables[table_name].update(df)
else:
    mytable = sheet.tables.add(source=sheet['A1'],
                               name=table_name).update(df)