如何设置Excel的工作表ActiveWindow.DisplayGridlines=False使用Python xlwings

2024-10-01 13:24:40 发布

您现在位置:Python中文网/ 问答频道 /正文

在excelvba中我可以使用ActiveWindow.DisplayGridlines=制造错误显示网格线消失。你知道吗

我不知道怎么做。你知道吗

这是我的密码:

import xlwings as xw

class MyExcel():
    """
    定义Excel类
    """

    def __init__(self, wb=None):
        if wb:
            self.wb = wb
        else:
            try:
                self.wb = xw.books.active
            except:
                print('不存在打开的工作簿')

        self.app = xw.App(visible=True, add_book=False)

    def sht(self, sht_name, clean = True, DisplayGridlines = False):
        try:
            return self.wb.sheets.add(name=sht_name, after=self.wb.sheets[-1].name)
        except ValueError:
            return self.wb.sheets[sht_name]

        if DisplayGridlines == False:
            self.wb.activate
            self.wb.sheets[sht_name].activate
            self.app.api.ActiveWindow.DisplayGridlines = False #wrong!!!

        if clean:
            self.wb.sheets[sht_name].cells.clear()


def main():
    sht = MyExcel().sht('a')

if __name__ == '__main__':
    main()

Tags: nameselffalseifmaindeftrywb
1条回答
网友
1楼 · 发布于 2024-10-01 13:24:40
import win32com.client

excel = win32com.client.Dispatch("Excel.Application")
excel.visible = True
# wb = excel.Workbooks.Open(r'c:\Users\Administrator\Desktop\2019-11-25.xlsx')
excel.Windows[excel.Activeworkbook.name].DisplayGridlines = False
excel.Activeworkbook.save
excel.quit()

使用win32com包解决问题。你知道吗

相关问题 更多 >