xlwings简单使用

  • xlwings能够非常方便的读写Excel文件中的数据,并且能够进行单元格格式的修改

xlwings基本操作

  1. 打开已有的Excel文档
# 导入xlwings模块
# 打开Excel程序,默认设置:程序可见,只打开不新建工作薄,屏幕更新关闭
import xlwings as xw
app=xw.App(visible=True,add_book=False)
app.display_alerts=False
app.screen_updating=False
# 打开文档,然后保存,关闭,结束程序
wb=app.books.open('data.xlsx')
wb.save()
wb.close()
app.quit()

   2.打开sheet页

sheet = wb.sheets['sheet1'] # 根据sheet页名称打开
sheet = wb.sheet[0] # 根据下标打开

   3.单元格赋值

# 单元格的引用
# A1单元格
cell = sheet[’A1']
# A1:B5单元格
cell = sheet['A1:B5']

# 对于单元格也可以用表示行列的tuple进行引用
# A1单元格的引用
cell = sheet.Range(1,1)
#A1:C3单元格的引用
cell = sheet.Range((1,1),(3,3))
# 对单元格赋值
cell.value = 'xxxxx'

   4.单元格读取

# 读取单个值
# 将A1的值,读取到a变量中
a = sheet.range('A1').value
将值读取到列表中
#将A1到A2的值,读取到a列表中[]
b = sheet.range('A1:A2').value
# 将第一行和第二行的数据按二维数组的方式读取[[],[]]
c = sheet.range('A1:B2').value

   5.获取最大行数

# 获取汇总sheet的最大行数
def get_max_row():
    max_row = sheet.used_range.last_cell.row
    return max_row

  6.获取最大列数

# 获取最大列数
def get_max_column(self):
  max_column = self.sheet.used_range.last_cell.column
  return max_column

 

  7.查找包含某关键字的元素所在单元格

# 得到key_value元素所在行号
def get_row_num(key_value):
    row_number = ''
    # 迭代遍历每行
    for row in range(1, sheet.get_max_row()):
        # 给定的条件,读者可根据自身需求自定义
        # 判断第 1 列的值 包含 key_value
        if key_value in str(sheet.range(row, 1).value):
            # 关键步骤!获得当前行的行号!
            row_number = row
        return row_number                

   8.删除行操作

# 删除行
def delete_rows(start_row, end_row):
    sheet.range(f'{start_row}:{end_row}').api.Delete()

   9.合并单元格

# 合并指定单元格
def together_cells(row_from, row_to):
    sheet.range('A{}:A{}'.format(row_from, row_to)).api.Merge()

   10.插入空行

def insert_space_rows(idx):
    sheet.api.Rows(idx).Insert()

 

posted @ 2021-03-11 15:24  小幸运||  阅读(2184)  评论(0编辑  收藏  举报