打开并保存 excel 个工作簿以修复它们
Open and save excel workbooks to repair them
我在一个文件夹中有一些损坏的工作簿,可以通过 openpyxl 读取,但是如果我打开它们并保存它们,它们就会被修复。
关于如何有效地完成这项工作,您有什么建议吗?
目前我的解决方案是使用 pyautogui,单击每个单独的文件以打开并保存它。解决方案很慢,我无法按名称 select 文件。
希望你能给我指明更好的方向。
#更新:
解决方案 1:
我使用以下代码找到并打开文件:
filename = ["C_72_00_a.xlsx", "C_73_00_a.xlsx", "C_74_00_a.xlsx", "C_76_00_a.xlsx"]
path = "D:\Python\Intradag_opdater\04\2022-04-04\LCR skema"
def clean(file_in):
with open(os.path.join(path, file_in), 'w+') as f:
pyautogui.hotkey('ctrl', 's')
for x in filename:
clean(x)
打开文件时,我按“ctrl”+“s”。
解决方案 2:
基本相同,但我在这里使用打开文件:
file_t = os.path.join("D:\Python\Intradag_opdater\04\2022-04-04\LCR skema", "C_76_00_a.xlsx")
os.startfile(file_t,'edit')
我希望这对以后的其他人有所帮助。
这解决了问题:
filename = ["C_72_00_a.xlsx", "C_73_00_a.xlsx", "C_74_00_a.xlsx", "C_76_00_a.xlsx"]
path = "D:\Python\Intradag_opdater\04\2022-04-04\LCR skema"
def clean2(file_in):
#solution 2
open = os.path.join(path, file_in)
os.startfile(open,'edit')
#tilføj time sleep start og luk excel
time.sleep(5)
pyautogui.hotkey('ctrl', 's')
pyautogui.hotkey('alt', 'f4')
for x in filename:
clean2(x)
print(x)
如果我使用 os 打开,文件会损坏我不知道为什么,但也许它对某些人有用:
def clean(file_in):
with open(os.path.join(path, file_in), 'w+') as f:
pyautogui.hotkey('ctrl', 's')
for x in filename:
clean(x)
print(x)
我在一个文件夹中有一些损坏的工作簿,可以通过 openpyxl 读取,但是如果我打开它们并保存它们,它们就会被修复。 关于如何有效地完成这项工作,您有什么建议吗?
目前我的解决方案是使用 pyautogui,单击每个单独的文件以打开并保存它。解决方案很慢,我无法按名称 select 文件。
希望你能给我指明更好的方向。
#更新: 解决方案 1: 我使用以下代码找到并打开文件:
filename = ["C_72_00_a.xlsx", "C_73_00_a.xlsx", "C_74_00_a.xlsx", "C_76_00_a.xlsx"]
path = "D:\Python\Intradag_opdater\04\2022-04-04\LCR skema"
def clean(file_in):
with open(os.path.join(path, file_in), 'w+') as f:
pyautogui.hotkey('ctrl', 's')
for x in filename:
clean(x)
打开文件时,我按“ctrl”+“s”。
解决方案 2:
基本相同,但我在这里使用打开文件:
file_t = os.path.join("D:\Python\Intradag_opdater\04\2022-04-04\LCR skema", "C_76_00_a.xlsx")
os.startfile(file_t,'edit')
我希望这对以后的其他人有所帮助。
这解决了问题:
filename = ["C_72_00_a.xlsx", "C_73_00_a.xlsx", "C_74_00_a.xlsx", "C_76_00_a.xlsx"]
path = "D:\Python\Intradag_opdater\04\2022-04-04\LCR skema"
def clean2(file_in):
#solution 2
open = os.path.join(path, file_in)
os.startfile(open,'edit')
#tilføj time sleep start og luk excel
time.sleep(5)
pyautogui.hotkey('ctrl', 's')
pyautogui.hotkey('alt', 'f4')
for x in filename:
clean2(x)
print(x)
如果我使用 os 打开,文件会损坏我不知道为什么,但也许它对某些人有用:
def clean(file_in):
with open(os.path.join(path, file_in), 'w+') as f:
pyautogui.hotkey('ctrl', 's')
for x in filename:
clean(x)
print(x)