最近在研究盤點機盤點的問題,其中有一部分的商品沒有的條形碼,就想着自個生成條形碼。參考了網上的教程,關於Excel批量生成條形碼有大體如下三種:python
嘗試了以上三種後,閱讀openpyxl示例文檔的時候,發現支持直接在Excel中插入圖片,就有了以下代碼:字體
from openpyxl import load_workbook,Workbook from openpyxl.drawing.image import Image from pystrich.code128 import Code128Encoder def excelCode128(file): ''' file:在文件目錄下執行,excel的文件名。 A列是商品編碼,B列是生成的條形碼。 ''' wb = load_workbook(file) sheet = wb.active x = 0 for r in range(1,sheet.max_row+1): for i in range(1,3): if i == 1: # A列數據生成條碼 var = sheet.cell(column=i,row=r).value filename = str(var)+'.PNG' Code128Encoder(str(var)).save(filename,bar_width=1) if i == 2: # B列數據插入條碼 img = Image(filename) B = 'B'+str(r) sheet.add_image(img,B) x += 1 wb.save(file) print("執行成功!共計%s條!" %str(x))