Avatar billede pesv Nybegynder
13. april 2012 - 11:29 Der er 7 kommentarer og
1 løsning

Macro til afseldelse af filer fra Excel

Hej
Jeg har en makro i Excel, der gennemgår en rykker liste og genererer en Excel fil for hver navn der er i listen, denne fil bliver gemt på c drevet. Efterfølgende skal hver fil sendes via Outlook til modtager, e-mailadressen er i master filen.
Er der nogen der kender til en måde hvor man vil kunne få afsendt Excel filerne via en makro?
Per
Avatar billede supertekst Ekspert
13. april 2012 - 11:59 #1
Ja - kan vise den herunder - har du erfaring med VBA?
og så velkommen Eksperten..


Skal nok tilpasses vedr. vedhft. fil

Public Sub test()

Dim Namespace As Object
    Dim EmailSend As MailItem
    Dim EmailApp As Object
    Dim ObjectOutlookMsg As Object
    Dim str_Source_Path As String
    Dim str_File_Name As String
    Dim str_Recipient As String
    Dim str_cc As String
   

    str_Source_Path = "D:\"
    str_File_Name = "*.pdf"
    str_Recipient = "modtager@mail.dk"
       
    Set EmailApp = CreateObject("Outlook.Application")
    Set ObjectOutlookMsg = EmailApp.GetNamespace("MAPI")
    Set EmailSend = EmailApp.CreateItem(0)
   
    EmailSend.Subject = "TEST"
    EmailSend.body = "xxx"
   
    'Loop and attach all files from this folder
    '-------------------------------------------
    str_File_Name = Dir(str_Source_Path)
    Do While str_File_Name <> ""
        EmailSend.Attachments.Add (str_Source_Path & str_File_Name)
        str_File_Name = Dir
    Loop
   
    EmailSend.ReadReceiptRequested = False
    EmailSend.Recipients.Add (str_Recipient)
    EmailSend.CC = str_cc
   
    EmailSend.Save
    EmailSend.Display

Exit_Glo:
    Exit Sub

Err_Glo:
    MsgBox Err.Description
    Resume Exit_Glo

End Sub
Avatar billede pesv Nybegynder
13. april 2012 - 12:24 #2
Tak for det, og nej jeg er ikke inde i VBA, men ser ud til at jeg bliver nød til at læse lidt på det.
Jeg kan godt se ideen i hvad der sker, men får nok svært ved at passe det ind, uden at grave dybere.
Men har jeg forstået det rigtigt, hvis der genereres 20 Excel filer i den første makro så vil denne sende de 20 filer til 20 forskelige modtagere ?
Per
Avatar billede supertekst Ekspert
13. april 2012 - 12:29 #3
Eksemplet tager alle filer fra en given mappe:

    'Loop and attach all files from this folder
    '-------------------------------------------
    str_File_Name = Dir(str_Source_Path)
    Do While str_File_Name <> ""
        EmailSend.Attachments.Add (str_Source_Path & str_File_Name)
        str_File_Name = Dir
    Loop

- men det skal du jo ikke.

Hvis filnavnet også blev gemt i Masterfilen - så var det måske mere enkelt.
Avatar billede pesv Nybegynder
13. april 2012 - 12:43 #4
Hej igen og tak, du lyder som om du er en haj til dette, så måske kunne du svare på om du tror det vil være muligt at ændre den macro jeg har nu (som gemmer en fil)til at den sendte en mail istedet for at gemme en filen :-), det kunne jo være løsningen.
Per
Avatar billede supertekst Ekspert
13. april 2012 - 13:17 #5
Tænker du så, at filens indhold skal indsættes i mailens "body"?

- men jeg tror godt at din makro kan ændres.
Avatar billede pesv Nybegynder
13. april 2012 - 13:53 #6
Hej igen
Det kunne være løsningen at indholdet insættes i body, jeg takker for hjælpen og prøver at se om jeg kan sætte noget sammen der virker, ellers må jeg vel få lidt proff hjælp et sted
God weekend
Per
Avatar billede supertekst Ekspert
13. april 2012 - 13:59 #7
Hej Per

Selv tak - god fornøjelse med det.
btb-assistance kan i givet fald også ydes herfra - @-adresse under min profil.

Også god weekend til dig.
Avatar billede pesv Nybegynder
14. maj 2012 - 07:42 #8
Er løst tak
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester