Excel在不影响原有格式的前提下设置框线—编码分享—by北方区平平无奇组织
回答
收藏

Excel在不影响原有格式的前提下设置框线—编码分享—by北方区平平无奇组织

程心
2022-12-30 16:54·浏览量:2168
程心
发布于 2022-12-30 16:542168浏览

场景:

在做excel表格处理时,遇到需要大量设置表格框线的情况。此时如果使用【设置格式】,将会丢失掉表格原来的字体、加粗、单元格颜色等格式。

例如:


解决方法:

添加编码版模块设置excel的框线

1、打开编码版,并添加py模块xlwings



2、粘贴以下代码,并调整

import xlwings as xw

def main(args):

    app = xw.apps.active # 当前活动app

    wb = app.books.active # 当前活动工作簿

    ws = xw.sheets.active # 当前活动工作表


    last_column = ws.range(2, 1).end('right').get_address(0,0)[0] # 获取区域结束列名

    last_row = ws.range(1, 1).end('down').row # 获取区域结束行数

    a_range = f'A1:{last_column}{last_row}' # 设置工作区域,也可以直接设置如“A1:D7”


    ws.range(a_range).api.Borders(7).LineStyle = 1 # 左边框

    ws.range(a_range).api.Borders(8).LineStyle = 1 # 上边框

    ws.range(a_range).api.Borders(9).LineStyle = 1 # 下边框

    ws.range(a_range).api.Borders(10).LineStyle = 1 # 右边框

    ws.range(a_range).api.Borders(11).LineStyle = 1 # 内部垂直边框

    ws.range(a_range).api.Borders(12).LineStyle = 1 # 内部水平边框


    wb.save()


3、将设置框线模块放在可视化流程中运行,例如



收藏
全部回答1
最新
发布回答
回答