我对Python还是很陌生-我在复制Excel中的范围作为图像并将该图像粘贴到Outlook电子邮件的正文时遇到问题。请在下面查看我的代码:
import win32com.client as win32
from PIL import ImageGrab
xlApp = win32.gencache.EnsureDispatch('Excel.Application')
wb = xlApp.Workbooks.Open('U:\Reporting\Templates\Daily_Update_Template_v3.xlsm')
ws = wb.Worksheets('Summary')
win32c = win32.constants
ws.Range(ws.Cells(1,1),ws.Cells(83,14)).CopyPicture(Format= win32c.xlBitmap)
img = ImageGrab.grabclipboard()
Message = 'Hello World!'
outlook = win32.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To = 'email@blaaaaa.com'
mail.Subject = 'Test'
mail.Body = img
mail.Send()
运行脚本时,出现以下错误:
TypeError:“ DibImageFile”类型的对象无法转换为 COM VARIANT(但可以获取此对象的buffer()可以)
有人可以帮助我理解吗?谢谢!