Мне удалось идентифицировать и извлечь все необходимые электронные письма, которые мне нужны. Я также сохранил вложения по электронной почте в другую переменную. Однако у меня возникла проблема с сохранением этих вложений в локальную папку, в частности те, которые имеют тип файла = .xlsx.
library(RDCOMClient)
setwd("C:/Updated")
outlook_app <- COMCreate("Outlook.Application")
search <- outlook_app$AdvancedSearch(
"Inbox",
"urn:schemas:httpmail:subject like '%Daily Efficiency Tracker%'"
)
Sys.sleep(10)
results <- search$Results()
attachment_file <- getwd()
for (i in 1:results$Count()) {
if (as.Date("1899-12-30") + floor(results$Item(i)$ReceivedTime())
== as.Date("2019-04-02")) {
email <- results$Item(i)
attachment <- email$Attachments()
for(j in 1:attachment$Count()){
if (grepl(".xlsx", attachment$Item(i)$FileName(), ignore.case = TRUE)) {
attachment$Item(i)$SaveAsFile(attachment_file)
}
}
}
}
Когда я запускал его построчно, у меня была только ошибка в этой части:
attachment$Item(i)$SaveAsFile(attachment_file)
Ниже приведено сообщение об ошибке:
<checkErrorInfo> 80020009
No support for InterfaceSupportsErrorInfo
checkErrorInfo -2147352567
Error: Exception occurred.