openpyxl.worksheet.worksheet模块

工作表是Excel中的第二级容器。

class openpyxl.worksheet.worksheet.Worksheet(parent, title=None)[源代码]

基类:openpyxl.workbook.child._WorkbookChild

表示工作表。

不要自己创建工作表,使用 openpyxl.workbook.Workbook.create_sheet() 相反

BREAK_COLUMN = 2
BREAK_NONE = 0
BREAK_ROW = 1
ORIENTATION_LANDSCAPE = 'landscape'
ORIENTATION_PORTRAIT = 'portrait'
PAPERSIZE_A3 = '8'
PAPERSIZE_A4 = '9'
PAPERSIZE_A4_SMALL = '10'
PAPERSIZE_A5 = '11'
PAPERSIZE_EXECUTIVE = '7'
PAPERSIZE_LEDGER = '4'
PAPERSIZE_LETTER = '1'
PAPERSIZE_LETTER_SMALL = '2'
PAPERSIZE_STATEMENT = '6'
PAPERSIZE_TABLOID = '3'
SHEETSTATE_HIDDEN = 'hidden'
SHEETSTATE_VERYHIDDEN = 'veryHidden'
SHEETSTATE_VISIBLE = 'visible'
property active_cell
add_chart(chart, anchor=None)[源代码]

向工作表中添加图表(可选)为左上角的定位点提供单元格

add_data_validation(data_validation)[源代码]

向工作表中添加数据验证对象。数据验证对象定义要应用的数据验证类型以及应用该验证的单元格或单元格范围。

add_image(img, anchor=None)[源代码]

向工作表中添加图像。可选地为左上定位点提供单元格

add_pivot(pivot)[源代码]
add_table(table)[源代码]

添加表之前,请检查definedNames和其他工作表表中的重复名称。

append(iterable)[源代码]

在当前工作表的底部附加一组值。

  • 如果是列表:所有值都按顺序添加,从第一列开始

  • 如果是dict:值被分配给键(数字或字母)所指示的列。

参数

iterable (list|tuple|range|generator or dict) -- 包含要附加值的列表、范围或生成器或dict

用途:

  • 追加 [“这是A1”,“这是B1”,“这是C1”] )

  • or 附加('A':'这是A1'、'C':'这是C1';)

  • or 附加(1:'这是A1',3:'这是C1')

提升

当iterable既不是列表/元组也不是dict时出现类型错误

calculate_dimension()[源代码]

返回包含数据的所有单元格的最小边界范围(例如“a1:m24”)。

返回类型

string

cell(row, column, value=None)[源代码]

返回基于给定坐标的单元格对象。

用法:cell(row=15,column=1,value=5)

调用 cell 第一次访问时在内存中创建单元格。

参数
  • row (int) -- 单元格的行索引(例如4)

  • column (int) -- 单元格的列索引(例如3)

  • value (numeric or time or string or bool or none) -- 单元格的值(例如5)

返回类型

openpyxl.cell.cell.Cell

property columns

按列生成工作表中的所有单元格(请参见 iter_cols()

delete_cols(idx, amount=1)[源代码]

从col==idx中删除一列或多列

delete_rows(idx, amount=1)[源代码]

删除行==idx

property dimensions

返回的结果 calculate_dimension()

property freeze_panes
insert_cols(idx, amount=1)[源代码]

在col==idx之前插入一列或多列

insert_rows(idx, amount=1)[源代码]

在行前插入一行或多行==IDX

iter_cols(min_col=None, max_col=None, min_row=None, max_row=None, values_only=False)[源代码]

按列从工作表中生成单元格。使用行和列的索引指定迭代范围。

如果没有指定索引,则范围从a1开始。

如果工作表中没有单元格,则返回空元组。

参数
  • min_col (int) -- 最小列索引(基于1的索引)

  • min_row (int) -- 最小行索引(基于1的索引)

  • max_col (int) -- 最大列索引(基于1的索引)

  • max_row (int) -- 最大行索引(基于1的索引)

  • values_only (bool) -- 是否只应返回单元格值

返回类型

generator

iter_rows(min_row=None, max_row=None, min_col=None, max_col=None, values_only=False)[源代码]

按行从工作表中生成单元格。使用行和列的索引指定迭代范围。

如果没有指定索引,则范围从a1开始。

如果工作表中没有单元格,则返回空元组。

参数
  • min_col (int) -- 最小列索引(基于1的索引)

  • min_row (int) -- 最小行索引(基于1的索引)

  • max_col (int) -- 最大列索引(基于1的索引)

  • max_row (int) -- 最大行索引(基于1的索引)

  • values_only (bool) -- 是否只应返回单元格值

返回类型

generator

property max_column

包含数据的最大列索引(基于1)

类型

利息

property max_row

包含数据的最大行索引(基于1)

类型

利息

merge_cells(range_string=None, start_row=None, start_column=None, end_row=None, end_column=None)[源代码]

对单元格区域设置合并。Range是单元格范围(例如A1:E1)

property merged_cell_ranges

返回单元格区域的副本

注解

已弃用:使用ws.merged_cells.ranges

mime_type = 'application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml'
property min_column

包含数据的最小列索引(基于1)

类型

利息

property min_row

包含数据的最小行索引(基于1)

类型

利息

move_range(cell_range, rows=0, cols=0, translate=False)[源代码]

按行数和/或列数移动单元格区域:如果行数>0,则向下;如果行数<0,则向上;如果列数>0,则向右;如果列数<0,则向左;现有单元格将被覆盖。公式和参考将不会更新。

property page_breaks
property print_area

工作表的打印区域,如果未设置,则为无。要设置,请提供“A1:D4”等范围或范围列表。

property print_title_cols

每页左侧要打印的列(例如:“A:C”)。

property print_title_rows

每页顶部要打印的行(例如:“1:3”)。

property print_titles
property rows

按行生成工作表中的所有单元格(请参见 iter_rows()

类型

发电机

property selected_cell
set_printer_settings(paper_size, orientation)[源代码]

设置打印机设置

property sheet_view
property show_gridlines
property show_summary_below
property show_summary_right
property tables
unmerge_cells(range_string=None, start_row=None, start_column=None, end_row=None, end_column=None)[源代码]

删除单元格区域上的合并。范围是单元格范围(例如A1:E1)

property values

按行生成工作表中的所有单元格值

类型

发电机