使用Python帮我编写一个代码,读取C:\Users\莫\Desktop\宏清洗,然后一个个的打开路劲里的表格,每个表格打开之后点击视图,点击视图之后点击宏,查看宏,选择宏2点击执行,运行完后保存并退出,打印清洗成功。
时间: 2024-05-08 07:20:16 浏览: 75
好的,根据您的要求,下面是 Python 代码:
```python
import os
import glob
import win32com.client as win32
# 获取需要处理的 Excel 文件路径
file_paths = glob.glob('C:\\Users\\莫\\Desktop\\宏清洗\\*.xlsx')
# 遍历文件路径,一个个打开表格
for file_path in file_paths:
# 打开 Excel 应用程序
excel = win32.Dispatch('Excel.Application')
excel.Visible = True
# 打开 Excel 文件
workbook = excel.Workbooks.Open(file_path)
# 点击“视图”选项卡
view_tab = workbook.ActiveSheet.Tab
view_tab.Select()
excel.ActiveWindow.ScrollWorkbookTabs(1)
# 点击“宏”按钮
view = excel.ActiveSheet
macro = view.Buttons('宏')
macro.Select()
# 查看宏,选择宏 2 并执行
vbproject = workbook.VBProject
macro_names = [vbcomponent.Name for vbcomponent in vbproject.VBComponents]
for macro_name in macro_names:
if macro_name.endswith('宏2'):
macro_code = vbproject.VBComponents(macro_name).CodeModule
exec_line = 'Sub Macro()\n' + macro_code.Lines(1, macro_code.CountOfLines) + '\nEnd Sub'
excel.Run(macro_name)
break
# 保存并退出 Excel
workbook.Save()
excel.Quit()
# 打印清洗成功
print('清洗成功!')
```
请注意,该代码在 Windows 系统中运行,需要安装 `win32com` 库,可以使用 `pip install pypiwin32` 命令进行安装。在运行之前,请将代码中的文件路径 `C:\\Users\\莫\\Desktop\\宏清洗\\*.xlsx` 修改为您实际保存文件的路径。运行代码后,程序将自动打开 Excel 应用程序,并读取该路径下的所有 Excel 文件,一个个打开表格,并依次执行您所指定的宏。最后,程序将在控制台打印“清洗成功!”的提示信息。
阅读全文