如何用Python操作OneDrive中Excel?修改保存报错问题求助
问题:OneDrive中Excel文件经Python(openpyxl/Pandas)修改后手动保存报错
- 操作OneDrive文件夹内的Excel文件,首次使用基于openpyxl的Python代码可成功写入指定内容到单元格,但手动打开文件修改后保存时会报错。本地文件无此问题,尝试先将文件保存到本地再移回OneDrive也无法解决。因公司安全限制,无法通过Python直接操作SharePoint上的文件。
- 补充:使用Pandas(以openpyxl为引擎)操作该文件也出现相同报错,但通过VBA宏修改并保存文件无异常。
- 10月19日更新:手动打开Excel修改后保存会报错,点击「放弃更改」后重新修改保存则正常;等待2小时后操作仍报错,且仅本人设备存在该问题,同账号其他设备无异常。
openpyxl操作示例代码
def Test(): wb = openpyxl.load_workbook(config_data['SchedulePath']) ws = wb.active ws['P6'] = "SomeTestText" wb.save(config_data['SchedulePath']) wb.close()
Pandas(openpyxl引擎)操作示例代码
def Test(): file_path = config_data['SchedulePath'] df = pd.read_excel(file_path, engine='openpyxl') df.iloc[4, 2] = "Test" df.to_excel(file_path, index=False, engine='openpyxl')
VBA宏调用示例代码
excel = win32.DispatchEx('Excel.Application') excel.Visible = 0 try: workbook = excel.Workbooks.Open(Filename=file_path) excel.Run(macro_name) workbook.Close() except Exception as e: print(f"Error encountered: {e}") finally: excel.Quit() del excel
内容的提问来源于stack exchange,提问作者Piperjoe
相关产品推荐
相关产品推荐

