我需要帮助修改多张文档中的一张,所有文档之间的纸张名称相同,从可见到成为“非常隐藏”。我知道如何在VBA中一次只为一个文档执行此操作,但我不知道如何执行此操作。将多个Excel文档中的“可见”更改为“非常隐藏”
我需要这样做超过100次,这将是巨大的,如果有人知道如何可以使用VBA或Python(可能使用“openpyxl”在Python 2?)
谢谢
我需要帮助修改多张文档中的一张,所有文档之间的纸张名称相同,从可见到成为“非常隐藏”。我知道如何在VBA中一次只为一个文档执行此操作,但我不知道如何执行此操作。将多个Excel文档中的“可见”更改为“非常隐藏”
我需要这样做超过100次,这将是巨大的,如果有人知道如何可以使用VBA或Python(可能使用“openpyxl”在Python 2?)
谢谢
编写本假设您有一个列表(files
),表示100个以上文件中的每个文件的文件路径。
from win32com import Client
files = ["path/to/file1.xlsx", "path/to/file2.xlsx"]
xl = client.Dispatch("Excel.Application")
map(hide, files)
xl.Quit()
def hide(file):
SHEET_NAME = "Sheet1" # The name of the sheet you want to hide
wb = xl.Workbooks.Open(file)
wb.Worksheets(SHEET_NAME).Visible = 2 # xlSheetVeryHidden
wb.Save()
wb.Close()
注意:如果你不想写明确直接在你的.py文件的列表中,你需要确定他们在以一个列表对象阅读他们的一些其他的方式。最终,您需要这些文件名的列表,或您需要某种编程导出文件名的方式。
谢谢你的回答,但有什么办法可以让我不需要列出100多份文件的路径? (在“文件”字段?) –
也许,你到目前为止尝试过什么?您几乎没有详细说明这些文件存在的位置,或者文件列表可以如何派生(即,从读取目录等) –
这些文件位于桌面上的文件夹内。 C:/Users/arancela/Desktop/TEST/ 这些文件全部以“MM_”开头,然后有数字从1到300,但是,数字的命名约定并没有在3位数字上完成,所以它们不遵循除了具有相同的前3个字符外,还组织了模式 我想要更改的工作表被称为“列表” 感谢您的帮助 –
究竟是什么“非常隐藏”?它与正常的“隐藏”不同吗? – SiHa
@SiHa工作表对象具有'.Visible'状态,它可以是三个常量:'xlSheetVisible','xlSheetHidden'和'xlSheetVeryHidden'。 “隐藏”工作表在隐藏/取消隐藏工作表UI中不可见,只能以编程方式隐藏。 –
@DavidZemens有用的信息,谢谢! – SiHa