帮助中心
快速寻找答案
首页>帮助手册>

xbot.excel.WorkSheet

描述:对工作表对象进行处理,如获取excel内容、写入excel内容、清除excel内容

方法

get_cell()

获取工作表中指定单元格的内容

get_cell(self, row_num, col_name)

输入参数

row_num:指定单元格的行号,行号从 1 开始

col_name:指定单元格的列名,列名从'A'开始

返回值

any:返回工作表中指定单元格内容

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
data = worksheet.get_cell(10, 'B')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取工作表中第 10 行第 B 列单元格的内容

get_row()

获取工作表中指定行内容

get_row(self, row_num)

输入参数

row_num:指定行号,行号从1开始

返回值

List[any]:返回读取到的内容列表

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
data = worksheet.get_row(1)
print(data)

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取工作表中第一行内容 --> 打印获取到的内容

get_column()

获取工作表中指定列内容

get_column(self, col_name)

输入参数

col_name:指定列名,列名从'A'开始

返回值

List[any]:返回读取到的内容列表,如['a', 'b', 'c', 'd']

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
data = worksheet.get_column('A')
print(data)

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取工作表中第 'A' 列内容 --> 打印获取到的内容

get_range()

获取工作表中指定区域的内容

get_range(self, begin_row_num, begin_column_name, end_row_num, end_column_name)

输入参数

begin_row_num:起始单元格行号,行号从1开始

begin_column_name:起始单元格列名,列名从A开始

end_row_num:结束单元格行号, 行号从1开始

end_column_name:结束单元格列名,列名从A开始

返回值

List[Tuple]:返回读取到的二维列表

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
data = worksheet.get_range(1, 'A', 3, 'F')
print(data)

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取工作表中 起始单元格 A1 到 结束单元格 F3 的矩形区域内容 --> 打印获取到的内容

set_cell()

在工作表指定单元格写入内容

set_cell(self, row_num, col_name, value)

输入参数

row_num:指定单元格的行号

col_name:指定单元格的列名

value:要写入到单元格中的内容

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
worksheet.set_cell(10, 'B', 'hello world')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 在工作表第 10 行第 B 列单元格写入 'hello world'

set_row()

设置工作表行内容

set_row(self, row_num, values, begin_column_name = 'A')

输入参数

row_num:指定要写入内容的行号,行号从 1 开始

values:要写入的内容,必须是一个列表类型

begin_column_name:指定写入内容的开始列名,默认值为 'A'

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
worksheet.set_row(1, ['a', 1, 2], begin_column_name = 'A')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 在第 1 行,第 A 列写入:['a', 1, 2]

set_column()

向工作表写入列内容

set_column(selef, col_name, values, begin_row_num = 1)

输入参数

col_name:指定要写入内容的列名

values:要写入的内容,必须是一个列表类型

begin_row_num:指定写入内容的开始行号,默认值为 1

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
worksheet.set_column('A', [1,2,3,4,5,6,7,8,9,0], begin_row_num = 1)

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 从第 1 行开始设置第 A 列数据值为 [1,2,3,4,5,6,7,8,9,0]

set_range()

向工作表指定区域写入内容

*set_range(self, row_num, col_name, values) *

输入参数

row_num:写入区域起始行号,行号从1开始

col_name:写入区域起始列名,列名从A开始

values:要写入的内容,必须是一个二维数组

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
worksheet.set_range(1, 'A', [['1','2','3'],['a','b','c']])

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 从 A1 处开始写入内容 [['1','2','3'],['a','b','c']]

append_row()

在工作表的最后追加一行内容

append_row(self, values, begin_column_name = 'A')

输入参数

values:要写入的值, 必须是一个列表类型

begin_column_name:设置开始的单元格列名, 默认值为 A

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
worksheet.append_row([1,2,3,4,5,6,7,8,9,0], begin_column_name = 'B')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 在工作表的最后追加一行内容,起始写入单元格的列名为 B,内容为 [1,2,3,4,5,6,7,8,9,0]

insert_row()

在工作表中插入一行内容

insert_row(self, row_num, values, begin_column_name = 'A')

输入参数

row_num:插入位置的行号,行号从1开始

values:要插入的值,必须是一个列表类型

begin_column_name:插入内容的起始列名,默认值为 A

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
worksheet.insert_row(10, [1,2,3,4,5,6,7,8,9,0], begin_column_name = 'A')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 往工作表第 10 行插入一条记录,行开始单元格列名为 A 插入值为 [1,2,3,4,5,6,7,8,9,0]

remove_row()

移除工作表的某一行内容

remove_row(self, row_num)

输入参数

row_num:要移除的行号

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
worksheet.remove_row(10)

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 移除工作表中第 10 行的数据

remove_column()

移除工作表的某一列内容

remove_column(self, column_name)

输入参数

column_name:要移除的列名

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
worksheet.remove_column('D')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 移除工作表中第 D 列的数据

clear()

清空工作表内容

clear(self)

输入参数

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
worksheet.clear()

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 清空工作表内容

get_row_count()

获取工作表的总行数

get_row_count(self)

输入参数

返回值

int:返回工作表的总行数

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.get_row_count()
print(count)

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取工作表当前数据的总行数 --> 打印总行数

get_column_count()

获取工作表的总列数

get_column_count(self)

输入参数

返回值

int:返回工作表的总列数

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.get_column_count()
print(count)

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取工作表当前数据的总列数 --> 打印总列数

select_range()

选中工作表的指定内容区域

select_range(self, begin_row_num, begin_column_name, end_row_num, end_column_name)

输入参数

begin_row_num:起始单元格行号,行号从1开始

begin_column_name:起始单元格列名,列名从A开始

end_row_num:结束单元格行号, 行号从1开始

end_column_name:结束单元格列名,列名从A开始

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.select_range(1, 'A', 3, 'C')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 选中工作表中 从单元格 A1 到单元格 C3 的矩形内容区域

get_name()

获取工作表的名称

get_name(self)

输入参数

返回值

str:返回工作表的名称

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.get_name()

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取工作表当前数据的名称

insert_column()

插入列

select_range(self, column_name, values, begin_row_index = 1)

输入参数

column_name:插入数据的起始列名

values:插入数据

begin_row_index:开始插入的行号

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.insert('D', [1, 'a', 2], 3)

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 从第3行开始,将列表 [1, 'a', 2] 插入到 D 列

get_first_free_column()

获取第一个可用列

get_first_free_column(self)

输入参数

返回值

str:返回工作表的列名

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.get_first_free_column()

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取当前列表的第一个可用列

get_first_free_column_on_row()

获取行的第一个可用列

get_first_free_column_on_row(self, row_num)

输入参数

row_num:行号

返回值

str:返回工作表的列名

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.get_first_free_column_on_row(3)

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取当前列表的第3行上的第一个可用列

get_first_free_row()

获取第一个可用行

get_first_free_row(self)

输入参数

返回值

int:返回工作表的行号

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.get_first_free_row()

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取当前列表的第一个可用行

get_first_free_row_on_column()

获取列的第一个可用行

get_first_free_row_on_column(self, column_name)

输入参数

column_name:列名

返回值

int:返回工作表的行号

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.get_first_free_row_on_column('D')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 获取当前列表的 D 列上的第一个可用行

copy_range()

拷贝指定的区域内容到剪切板

copy_range(self, begin_row_num, begin_column_name, end_row_num, end_column_name)

输入参数

begin_row_num:起始单元格行号,行号从1开始

begin_column_name:起始单元格列名,列名从A开始

end_row_num:结束单元格行号, 行号从1开始

end_column_name:结束单元格列名,列名从A开始

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.copy_range(1, 'A', 3, 'C')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 拷贝工作表中从单元格 A1 到单元格 C3 的矩形内容区域

paste_range()

从指定的起始单元格粘贴剪切板数据 (该接口已弃用,后续不再维护,建议使用接口paste_range_ex)

paste_range(self, row_num, column_name)

输入参数

row_num:起始单元格行号,行号从1开始

column_name:起始单元格列名,列名从A开始

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.paste_range(3, 'C')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 从指定的起始单元格 C3 粘贴剪切板数据

paste_range_ex()

从指定的起始单元格粘贴剪切板数据,扩展选择性粘贴功能

paste_range_ex(self, row_num, column_name, paste_type, paste_special_operation, skip_blanks, transpose)

输入参数

row_num:起始单元格行号,行号从1开始

column_name:起始单元格列名,列名从A开始

paste_type:粘贴类型,类型参数代码如下:

粘贴类型参数代码
全部-4104
公式-4123
数值-4163
格式-4122
批注-4144
有效性验证6
所有使用源主题的单元13
边框除外7
列宽8
公式和数字格式11
值和数字格式12

paste_special_operation:粘贴运算,参数代码如下:

粘贴类型参数代码
-4142
2
3
4
5

skip_blanks:是否跳过空单元,默认为False(不跳过)

transpose:是否选择转置,默认为False(不转置)

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.paste_range(3, 'C', -4104, -4142, False, False)

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 从指定的起始单元格 C3 粘贴剪切板数据,粘贴类型为全部

clear_range()

清空指定的区域内容

clear_range(self, begin_row_num, begin_column_name, end_row_num, end_column_name)

输入参数

begin_row_num:起始单元格行号,行号从1开始

begin_column_name:起始单元格列名,列名从A开始

end_row_num:结束单元格行号, 行号从1开始

end_column_name:结束单元格列名,列名从A开始

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
count = worksheet.clear_range(1, 'A', 3, 'C')

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 清空工作表中从单元格 A1 到单元格 C3 的矩形内容区域

set_row_hidden()

设置行隐藏属性

set_row_hidden(self, row_num, hidden = False)

输入参数

row_num:行号,list,行号从1开始

hidden:隐藏属性,默认为False(取消隐藏)

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
row_list = [1,2,3]
worksheet.set_row_hidden(row_list, True)
workbook.save()
workbook.close()

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" --> 设置第1行到第3行隐藏

set_column_hidden()

设置行隐藏属性

set_column_hidden(self, column_name, hidden = False)

输入参数

column_name:列名列表,列名从A开始

hidden:隐藏属性,默认为False(取消隐藏)

返回值

示例1

from xbot import excel
def main(args):
workbook = excel.open('D:\\test.xlsx', kind = 'office', visible = True)
worksheet = workbook.get_active_sheet()
col_list = ['A','B','C']
worksheet.set_column_hidden(col_list, True)
workbook.save()
workbook.close()

该示例执行逻辑: 可视化打开excel工作表 "D:\test.xlsx" -->设置第A列到第C列隐藏 --> 保存excel表 --> 关闭excel表

问题没有解决?去社区提问