找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 1667|回复: 0

[讨论] xlwings下怎么使用with设置同一对象的多种属性?

1

主题

2

帖子

2

积分

贫民

积分
2
zengjing 发表于 2021-12-15 16:38:09 | 显示全部楼层 |阅读模式
VBA中可以使用with语句设置同一对象的多种属性,如下
    With rng
        .Font.Size = 9
        .Font.Name = "宋体"
        .Font.Bold = False '不加粗
        .HorizontalAlignment = xlLeft '左对齐
        .VerticalAlignment = xlCenter '上下居中
        .WrapText = True '自动换行
        .EntireRow.AutoFit '自适应行高
        .Borders.LineStyle = xlContinuous '全部边框
    End With
我尝试在python中设置如下:
        with rng.api.Font:
                .Bold=False
                .Size=40
结果.Bold=False报错“SyntaxError: invalid syntax”
        with rng.api.Font as x:
                x.Bold=False
                x.Size=40
结果报错“AttributeError: __enter__”,意思rng.api.Font这个对象不支持上下文协议。
那么xlwing下怎么实现类似VBA中的with语句?还是只能分行设置如下:
        rng.api.Font.Bold=False
        rng.api.Font.Size=40
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表