Excel 使用 Pyautogui 实现自动化

Excel Automation Using Pyautogui

我有一个 excel 插件,我需要刷新 4000 个 excel 文件。刷新的快捷键是“Alt + s + r + a”。我想 运行 一个循环,在这个循环中我打开 excel 文件,使用快捷方式执行刷新,然后保存 excel 文件。这是我的一个 excel 文件的代码:

import pyautogui
import openpyxl

wb = openpyxl.load_workbook("C:/file.xlsx")
ws = wb['Sheet1']
pyautogui.hotkey('alt', 's', 'r', 'a')
wb.save("C:/file.xlsx")

然而,这只是打开并保存 excel 文件而不刷新它。如有任何帮助,我们将不胜感激!

我使用 win32com 打开 excel 并将其置于顶部并开始一个一个地按下按钮,延迟 1 秒,然后保存并关闭它。

import time
import pyautogui
import win32com.client
from win32gui import SetForegroundWindow
xl = win32com.client.DispatchEx("Excel.Application")
wb = xl.workbooks.open("C:/file.xlsx")
xl.Visible = True
SetForegroundWindow(xl.hwnd)
time.sleep(3)
pyautogui.typewrite(['alt', 's', 'r', 'a'], interval=1)
time.sleep(3)
wb.Close(SaveChanges=1)
xl.Quit()