Pythonで、Excelに複数画像を一括挿入する方法をご紹介します。
Excelに複数画像を一括挿入
以下のプログラムを実行すると、エクセルに画像をまとめて挿入します。
import openpyxl
from openpyxl.drawing.image import Image
import os
#画像挿入するエクセルファイルを指定
wb = openpyxl.load_workbook('C:/Users/admin/Desktop/テスト/test.xlsx')
ws = wb["Sheet1"]
#貼り付け開始セル
Mycell = 1
#フォルダ内にあるファイル取得
files = os.listdir("C:/Users/admin/Desktop/テスト")
mypath = "C:/Users/admin/Desktop/テスト/"
#ファイルをループ
for filename in files:
#pngファイルだったら
if filename[-3:]=="png":
#挿入する画像
img = Image(mypath + filename)
#リサイズ
img.width = 80
img.height = 80
#指定位置に画像挿入
ws.add_image(img, 'B'+ str(Mycell))
#次の貼り付け開始セル
Mycell = Mycell+5
#別名保存
wb.save('C:/Users/admin/Desktop/テスト/画像挿入.xlsx')
コード実行前
あらかじめ以下を準備します。
・画像を挿入するExcelファイル
・画像ファイル
コード実行後
[wb] で指定したエクセルファイルが別名で保存されます。
エクセルファイルの「Sheet1」の指定セルから、複数の画像を挿入していきます。
1つの画像を貼り付けたあと、次の画像は5個下のセルから貼り付けします。
動作環境
Python 3.7.4
openpyxl 3.0.5
この記事がお役に立ちますと幸いです。
・【Python】エクセルを自動処理する方法まとめ

【Python】エクセル処理を自動化:超便利55選
...
「PythonでExcel、メール、Webを自動化する本」
準備に時間をかけず、すぐ始められます
実践的な例題で、実務で本当に使えるプログラムを紹介
自分の仕事を効率化したい方の大きな武器になるオススメの1冊です!
リンク