def copy_row_between_excel_files():
try:
# 定义文件路径
source_file = "test_authur.li_2ede10b9-e867-49eb-ac9b-f2c167f9b62b.xlsx"
target_file = "test_authur.li_0682109e-c1f4-4bd8-91ea-78a627c14bb5.xlsx"
# 检查文件是否存在
if not os.path.exists(source_file):
print(f"源文件不存在: {source_file}")
return
if not os.path.exists(target_file):
print(f"目标文件不存在: {target_file}")
return
# 创建工作簿实例
source_workbook = Workbook()
target_workbook = Workbook()
# 加载Excel文件
source_workbook.LoadFromFile(source_file)
target_workbook.LoadFromFile(target_file)
# 获取第一个工作表
source_sheet = source_workbook.Worksheets[0]
target_sheet = target_workbook.Worksheets[0]
# print(source_sheet.HasOleObjects, source_sheet.HasOleObjects)
row = source_sheet.Rows[2]
source_sheet.CopyRow(row, target_sheet, 4, CopyRangeOptions.All)
# source_ole_range = source_sheet.Range["I3"]
# target_ole_range = target_sheet.Range["I4"]
# source_ole_range.Copy(target_ole_range, CopyRangeOptions.All)
# 保存目标文件
target_workbook.SaveToFile("merged.xlsx", ExcelVersion.Version2016)
# 释放资源
source_workbook.Dispose()
target_workbook.Dispose()
print("操作成功完成!已将源文件的第3行插入到目标文件的第3行之后。")
except Exception as e:
print(f"操作过程中发生错误: {traceback.format_exc()}")
copy_row_between_excel_files()
无论是使用Copy()还是CopyRow()方法,都无法正确复制含有ole对象的单元格,请问有没有什么解决办法