通过outlook发送R Markdown输出作为正文电子邮件(RDCOMclient)

edi*_*ile 8 outlook r outlook-vba r-markdown rdcomclient

刚刚学习R Markdown语言并想知道我是否可以通过Outlook的Outlook发送身体电子邮件中的输出(使用RDCOMClient;我的办公室不使用gmail)

谢谢

Ben*_*son 1

简短回答:

为电子邮件正文创建 .Rhtml 文件。

编织并阅读:

knitr::knit("tale_email_body.Rhtml")  
library("readr", lib.loc="~/R/win-library/3.2")
eb <- read_lines("tale_email_body.html",n_max= -1L)
eb2<-paste(eb, sep="", collapse="") 
Run Code Online (Sandbox Code Playgroud)

在电子邮件正文中使用结果:

library(RDCOMClient)

olMailItem <- 0
OutApp <- COMCreate("Outlook.Application")
outMail = OutApp$CreateItem(olMailItem)

# this retains default Outlook signature
outMail$GetInspector()
signature <- outMail[["HTMLBody"]]

outMail[["To"]] <- sm
outMail[["CC"]] <- paste("egrp",dm,sep=";")
outMail[["subject"]] <- "note this"
outMail[["BodyFormat"]] <- 2
outMail[["HTMLbody"]] <- paste0(eb2, signature)
outMail$Display()
outMail$Send()
Run Code Online (Sandbox Code Playgroud)

如果您有疑问或需要改进,请告诉我。

部分归功于:如何使用 RDCOMClient 将我的 Outlook 电子邮件签名添加到 COM 对象