Openpyxl,如何遍历工作表以在每个工作表中添加图像?

时间:2018-07-02 11:24:55

标签: python openpyxl

我想向工作簿中的每个工作表添加一个图像,但是当我尝试使用for循环遍历工作簿时,程序返回错误,但是添加到第一张工作表就可以了。

这是有效的代码,但是只能添加到第一张纸上:

    ws = wb.active
    img = Image('screenshot.png')
    ws.add_image(img, 'A1')

这是试图遍历每张纸的代码:

    img = Image('screenshot.png')
    for sheet in wb:
        sheet.add_image(img, 'A1')

这是它返回的错误:

    UserWarning: Duplicate name: 'xl/media/image4.png'

似乎是'wb.active'可能是问题所在,但是我不确定如何将其集成到for循环中...

1 个答案:

答案 0 :(得分:0)

只要有人想知道您是否必须在for循环内分配'img'变量,就找到修复程序:

    for sheet in wb:
        img = Image('screenshot.png')
        sheet.add_image(img, 'A1')