提问人:breelogna 提问时间:8/4/2023 最后编辑:Communitybreelogna 更新时间:8/24/2023 访问量:42
如果行满足条件,则将表中的行复制到电子邮件中
Copy rows from table into email if the rows meet condition
问:
我有一个电子表格,用于跟踪不同许可证的到期日期。它在 sheet1 中有一个表,在 sheet2 中有四个表。
打开工作簿时,我会自动发送电子邮件。使用计算机的 shell:startup,当我早上打开计算机时,它会打开。该代码将 Excel 电子表格附加到电子邮件中。
Private Sub Workbook_Open()
Dim emailApplication As Object
Dim emailItem As Object
Set emailApplication = CreateObject("Outlook.Application")
Set emailItem = emailApplication.CreateItem(0)
emailItem.to = "[email protected]"
emailItem.Subject = "Please Review; Upcoming Expiration Dates"
emailItem.Body = "Please review the attached spreadsheet as it may have dates that are expired/soon to be expired. Please note there are multiple sheets."
emailItem.Attachments.Add ActiveWorkbook.FullName
emailItem.Display
MsgBox "Your email has been sent.", vbInformation
End Sub
我想复制显示“在 30 天内过期”或“已过期”的行,并将其以表格格式粘贴到电子邮件正文中。
例如,当列 G2 声明“EXPIRED”或“Expires w/in 30 days”时,返回整个 B2:G2。
我尝试过什么:我从 Ron de Bruin 和其他论坛复制并编辑了多行不同的代码,以将整个表格粘贴为图像(但我无法从多个工作表中获取多个表格,只能获得一个表格)。
我已经运行了返回 TRUE 或 FALSE 甚至 1 或 -1 的代码,以及以段落形式为我提供表格内容的代码。
例如,我知道有变通方法;将多个工作表中的条件行粘贴到在代码末尾被终止的虚拟工作表。我可以把它贴在身体里。
或者,也许从每个工作表生成多个表格图片。我可以为每张纸发送一封电子邮件。
答: 暂无答案
评论
.SpecialCells(xlCellTypeVisible).Copy