xlwings调用pywin32 api来操作excel

excel vba 官方文档
https://docs.microsoft.com/zh-cn/office/vba/api/overview/excel
VBA获取,录制宏,看对应要用的vba代码

把表格分组 合起来(group)
vba

Worksheets("Sheet1").Outline _ 
 .ShowLevels rowLevels:=3, columnLevels:=1

Python

sht1.api.Outline.ShowLevels(0,1)

单元格里的值向右对齐
vba

Range("AN2").Select
With Selection
    .HorizontalAlignment = xlLeft
    .VerticalAlignment = xlCenter
    .WrapText = False
    .Orientation = 0
    .AddIndent = False
    .IndentLevel = 0
    .ShrinkToFit = False
    .ReadingOrder = xlContext
    .MergeCells = False
End With

Python

sht1.range('AL2').expand('right').api.HorizontalAlignment = -4131

XLHALIGN 枚举 (EXCEL)
名称 值 说明
xlHAlignCenter -4108 居中。
xlHAlignCenterAcrossSelection 7 跨列居中。
xlhaligndistributedxlhalignfill -4117 分散对齐。
xlhaligngeneral 5 填充。
xlhalignjustify 1 按数据类型对齐。
xlhalignleft -4130 两端对齐。
xlHAlignLeft -4131 靠左。
xlHAlignRight -4152 靠右。


加四面边框
vba:

With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With

Python

sht1.range('AK2').expand('right').api.Borders.LineStyle = 1

xlContinuous 1
实线。
xlDash -4115
虚线。
xlDashDot 4
点划相间线。
xlDashDotDot 5
划线后跟两个点。
xlDot -4118
点线。
xlDouble -4119
双线。
xlLineStyleNone -4142
无线。
xlSlantDashDot 13
倾斜的划线。

高级筛选

    sht1.range('A1').expand('table').api.AdvancedFilter(Action=2, CriteriaRange=Criteria_Range.api,
                                                        CopyToRange=sht2.range('A1').api)

sht1.range(‘A1’).expand(‘table’)是查找区域,
Action=2将筛选出的数据复制到新区域
Action=1的话,在当前区域直接筛选
CriteriaRange就是筛选条件所在单元格区域
CopyToRange把筛选出的数据复制到新区域,所有的range要.api

移动sheet至第一个

wb.sheets('结果').api.Move(wb.sheets(1).api)
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值