鱼C论坛

 找回密码
 立即注册
查看: 90|回复: 1

按照名称对应将图片插入到excel的指定sheet

[复制链接]
发表于 7 天前 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
使用python程序执行以下操作:
在d盘文件夹“测试excel”有一个excel“测试.excel”,里面有多个sheet,sheet名诸如“工艺卡1”,“工艺卡2”,“工艺卡3”,
另外,在d盘文件夹“测试图片”有多个图片,图片名诸如“工艺卡1.jpg”,“工艺卡2.jpg”
将图片插入到对应名称如“工艺卡1.jpg”插入到sheet“工艺卡1”的第10行第8列
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 7 天前 | 显示全部楼层
这个任务需要用到Python,以及一些第三方库如`openpyxl`和`Pillow`。下面是一个示例程序,它将图片插入到Excel的指定sheet和位置:
import os
from openpyxl import load_workbook
from openpyxl.drawing.image import Image

def insert_images_to_excel(excel_path, img_folder_path):
    # 加载工作簿
    workbook = load_workbook(excel_path)

    # 获取所有图片文件名
    img_files = [f for f in os.listdir(img_folder_path) if f.endswith('.jpg')]

    for img_file in img_files:
        # 获取图片对应的sheet名
        sheet_name = os.path.splitext(img_file)[0]

        if sheet_name in workbook:
            # 加载图片
            img_path = os.path.join(img_folder_path, img_file)
            img = Image(img_path)

            # 指定插入位置,比如第10行第8列
            cell_location = 'H10'
            
            # 插入到对应的sheet中
            sheet = workbook[sheet_name]
            sheet.add_image(img, cell_location)
            
            print(f"Inserted {img_file} into {sheet_name}.")
        else:
            print(f"Sheet {sheet_name} does not exist in {excel_path}.")

    # 保存更改
    workbook.save(excel_path)
    print("All images inserted successfully.")

# 定义文件路径
excel_path = 'D:/测试excel/测试.excel'
img_folder_path = 'D:/测试图片/'

# 调用函数
insert_images_to_excel(excel_path, img_folder_path)

请注意:
1. 你需要确保 `openpyxl` 和 `Pillow` 库已安装。可以用以下命令安装:
pip install openpyxl pillow
2. 确保你的图片文件名与Sheet名称完全一致(不包括文件扩展名)。
3. 将文件路径 `excel_path` 和 `img_folder_path` 修改为你的实际路径。

这个脚本会查找每个图片,将其插入到对应sheet的`H10`单元格位置。你可以根据需要修改代码中的插入位置。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-21 08:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表