Todas as manhãs recebo um e-mail de uma pessoa que contém um anexo de planilha. Consegui criar uma regra do Outlook que captura esses e-mails. Agora, é possível salvar automaticamente o anexo de cada um deles em uma pasta local, com o nome de arquivo AAAA-MM-DD.xls?
O anexo no e-mail tem um nome de arquivo gerado aleatoriamente, portanto, é necessário usar a data de envio do e-mail para escolher um nome de arquivo. NB: isso está no meu laptop, então há uma chance de o e-mail ser enviado em um dia diferente do dia em que foi recebido por mim (como quando ele está desligado por um dia), então usar "data de hoje" é não é uma opção viável.
EDITAR: usando o Windows 7 com Outlook 2013
Responder1
Para fazer o que quiser, você precisará misturar um pouco de VBA e Regras. Não tenho certeza de qual versão do Outlook você está usando, portanto não há garantias aqui. Isso foi testado no Outlook 2010.
Este artigo irá ajudá-lo a configurar as coisas -Regra para salvar automaticamente o anexo no Outlook.
O código abaixo é modificado especificamente para salvar o arquivo com o formato de nome yyyy-mm-dd
.
Public Sub SaveToDisk(itm As Outlook.MailItem)
Dim objAtt As Outlook.Attachment
Dim saveFolder As String
Dim dateFormat
dateFormat = Format(Now, "yyyy-mm-dd")
'Change this path to the your folder location
saveFolder = "c:\temp\"
objAtt.SaveAsFile saveFolder & "\" & dateFormat & ".xls"
Set objAtt = Nothing
End Sub
Depois de configurar esta regra para executar este script, ele salvará qualquer anexo dessa pessoa cada vez que receber um (e fornecerá uma .xls
extensão). Se desejar mudar isso, você terá que modificar sua regra ou desativá-la.