excel - 如何使用 Excel VBA 从 Thunderbird 发送电子邮件正文中的图像?
问题描述
如何使用 Excel VBA 从 Thunderbird 发送电子邮件正文中的图像?
thundnd = "C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe " & "-compose " & Chr(34) & _
"to='" & email & "'," & "subject='" & subj & "'," & "body='" & body & "'," & "format=1," & Chr(34)
Call Shell (thundnd, vbNormalFocus)
我想发送一张图片,不是在附件中,而是在电子邮件的 HTML 正文中。
在 VBA 中,我使用EncodeBase64 对字符串中的图像进行编码。
结果,我在 72 个字符后跳转到下一行。
/9j/4AAQSkZJRgABAQEAYABgAAD/4RCERXhpZgAATU0AKgAAAAgABAE7AAIAAAAGAAAISodp
AAQAAAABAAAIUJydAAEAAAAMAAAQcOocAAcAAAgMAAAAPgAAAAAc6gAAAAgAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
我把它插入身体
<img src="data:image/png;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/4RCERXhpZgAATU0AKgAAAAgABAE7AAIAAAAGAAAISodp"
aaqaaaabaaaiujydaaeaaaamaaaqcoocaacaaagmaaaapgaaaaac6gaaaagaaaaaaaaaaaaa="" e.t.c.
解决方案
我找到了一个简单的答案。
编辑编码字符串并替换字符:vbLf(换行)
correctPicture = Replace(Mid(bytes, 1), vbLf, "")
现在它正在工作。
推荐阅读
- reactjs - 如何通过 flowtype 定义 ref 类型?
- php - 回显一个数组值,给出另一个数组的键
- c# - Linq:ForEach 项目返回从该项目开始获取 n 个唯一项目所需的项目数
- regex - 如何按照某种模式获取字符串?
- python - 如何在 Python 中将 base64 编码的字符串转换为没有磁盘 I/O 的文件(用于 HTTP 请求)
- javascript - Javascript 中的月/日比较
- java - Cucumber Runner Class 未运行 Step Definitons
- javascript - 仅在悬停时显示文本
- openmdao - 约束处理、整数和并行优化
- ruby - Chef Exec Rspec 错误:引发 ArgumentError(示例之外的错误)