07. december 2017 - 16:37Der er
7 kommentarer og 1 løsning
Gemme vedhæftet fil fra mails i Outlook - vha. VB Access
Hej alle, Håber i kan hjælpe mig med en kode til VB Acces, hvor koden skal gemme 1 vedhæftet fil, i mails placeret i en undermappe i inbox. (der er kun 1 .xlxs fil per mail). Jeg anvender Outlook som mail system...
Mails ligger i "Inbox" - undermappe "Behandles" Gem vedhæftet fil fra mail (placering: 'C:\GemteFiler\') Filnavn skal ikke ændres Når den vedhæftet fil er gemt, skal mail flyttes til "Inbox" - undermappe "Afsluttet"
VBA in Access you'll need a reference to Outlook (Tools-References)
Dim myApp As New Outlook.Application Dim myNameSpace As Outlook.NameSpace Dim myFolder As Outlook.MAPIFolder Dim myAflsuttetFolder As Outlook.MAPIFolder Dim myMsg As Outlook.MailItem Dim a As Integer
Set myApp = CreateObject("Outlook.Application") Set myNameSpace = myApp.GetNamespace("MAPI") Set myFolder = myNameSpace.GetDefaultFolder(olFolderInbox)
Set myAflsuttetFolder = myFolder.Folders("Afsluttet")
Set myFolder = myFolder.Folders("Behandles")
For Each myMsg In myFolder.Items With myMsg
For a = 1 To myMsg.Attachments.Count
myMsg.Attachments.Item(a).SaveAsFile "C:\GemteFiler" & "\" & myMsg.Attachments.Item(a).DisplayName Next a
myMsg.Move myAflsuttetFolder
End With Next
Set myMsg = Nothing Set myAflsuttetFolder = Nothing Set myFolder = Nothing Set myNameSpace = Nothing Set myApp = Nothing
Man kan så sige at det ikke har noget med access at gøre - det kunne lige så godt laves i excel eller endog blot vbscript. Jeg kan godt forstille mig mail brug, hvor det uhensigtsmæssigt at fylde mail systemet op med massser af vedhæftede, og at det giver bedre overblik og bekvemmere start af associerede program når de ligger i filsystemmet.
En tanke jeg finder interessant, nu access er i spil, er at man sagtens kan simulere mappeindhold i access - alså bruge access som både et arkiv og arkiv browser ligesom en zip fil der browses med zip program - Så kunne man også få lidt relevante mailheadere med, som 'from' og 'subject'. Med andre ord - gemme i felttypen blob som fra 2007 er blevet eksponeret i table design, men altid har været der og tilgåes i vba vha getchunk og addchunk
Hej Terry og Bvirk, Tak for jeres svar. Omkring "VBA in Access you'll need a reference to Outlook (Tools-References)" Hvordan gør jeg det i Outlook 2016?
Hvis jeg kører koden fra Terry, får jeg en Compile error med "User-defined type not defined" ved: "Dim myApp As New Outlook.Application" Er det på grund af, at jeg mangler ovenstående reference? Vh Carsten
Hi Terry, Thanks again for your answer. Yes, I want to have the code in Microsoft Access. I just need to "adjust" the reference to Outlook. (at present I just don't have the Tool menu in my Outlook version) Waiting for the tool, to make the reference. //Carsten
In Access you also find References under tools menu when in code view (CTRL+G)
In Outlook try pressing ALT+F11 to get to code view
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.