email opslaan in een specifieke directory

Status
Niet open voor verdere reacties.

janus1janus1

Gebruiker
Lid geworden
7 apr 2005
Berichten
103
LS

Ik wil graag email c.q. bijlage automatisch opslaan in een specifieke map. Met een rule in Outlook kan ik wel naar een map verwijzen maar dan staat deze in een .pst file.
Bij rules staat ook de mogelijkheid om bij ontvangst van specifieke berichten een script te runnen. Als je dit activeert krijg je een overzicht te zien van de beschikbare scripts.
De scripts die in VBA Outlook staan krijg ik hier echter niet te zien.
Is iemand hiermee bekend of is er misschien een andere manier om al of niet met een script automatisch mail en of bijlagen op te slaan.

Bij voorbaat dank voor het meedenken
janus
 
Ik onderscheid 4 situaties:

I. Er is vanuit Excel een verbinding gelegd met de VBA-bibliotheek van Outlook (VBEditor/menubalk / Extra / Verwijzingen /
Microsoft Outlook Object library aangevinkt).
Ia. Outlook is niet geladen
Ib. Outlook is geladen

II. Die verbinding is nog niet gelegd.
IIa Outlook is niet geladen
IIb Outlook is geladen

I. VBAcode bij verbinding met bibliotheek

Ia.
Code:
Sub bijlage_opslaan_Ia()
  With New Outlook.Application
    For Each it In .GetNamespace("MAPI").GetDefaultFolder(6).Items
      If it.Attachments.Count > 0 Then it.Attachments(1).SaveAsFile "E:\" & it.Attachments(1).Filename
    Next
    .Quit
  End With
End Sub
Ib.
Code:
Sub bijlage_opslaan_Ib()
  With Outlook.Application
    For Each it In .GetNamespace("MAPI").GetDefaultFolder(6).Items
      If it.Attachments.Count > 0 Then it.Attachments(1).SaveAsFile "E:\" & it.Attachments(1).Filename
    Next
  End With
End Sub

II. VBAcode zonder verbinding
IIa. Outlook is niet geladen

Code:
Sub bijlage_opslaan_IIa()
  With CreateObject("Outlook.Application")
    For Each it In .GetNamespace("MAPI").GetDefaultFolder(6).Items
      If it.Attachments.Count > 0 Then it.Attachments(1).SaveAsFile "E:\" & it.Attachments(1).Filename
    Next
    .Quit
  End With
End Sub

IIb Outlook is geladen
Code:
Sub bijlage_opslaan_IIb()
  With GetObject(,"Outlook.Application")
    For Each it In .GetNamespace("MAPI").GetDefaultFolder(6).Items
      If it.Attachments.Count > 0 Then it.Attachments(1).SaveAsFile "E:\" & it.Attachments(1).Filename
    Next
  End With
End Sub
 
Laatst bewerkt:
Heel erg bedankt voor je gedetailleerd antwoord.
Ik kan het script runnen maar zit toch nog met een vraag.

Ik wil het script alleen (automatisch) runnen als de mail van een specifieke afzender afkomt. In Rules & Alerts heb ik de mogelijkheid om een script te runnen als het van een bepaalde afzender komt. Als ik dit echter activeer zou ik een overzichtje moeten krijgen van de beschikbare scripts. Dit overzichtje is en blijft helemaal leeg.
Iemand een idee hoe dit op te lossen,

Bij voorbaat hartelijk dank voor het meedenken
Janus
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan