Print side | Luk vindue

Email en vedhæftet fil med VBA

Udskrevet fra: Dansk Regneark Forum
Kategori: Hjælp til regneark.
Forum navn: Makro og VBA
Forum beskrivelse: Hjælp til Makroer og VBA-programmering
Web-adresse: https://forum.excel-regneark.dk/forum_posts.asp?TID=408
Udskrevet den: 05.Dec.2024 kl. 03:45


Emne: Email en vedhæftet fil med VBA
Besked fra: ccc19155
Emne: Email en vedhæftet fil med VBA
Posteringsdato: 27.Jul.2011 kl. 15:12
Hej eksperter.
Jeg har et regneark der gemmer en pdf-fil på mit lokale drev. "C:\test\test.pdf"
 
Er det muligt at bruge SendMail så filen vedhæftes mailen.
SendMail viser kun: Sub SendMail(Recipients, [Subject], [ReturnReceipt])
men ikke vedhæft fil, billed eller andet.
 
Eller kan jeg direkte generere en pdf-fil som jeg kan sende som vedhæftet.



Svar:
Besked fra: Allan
Posteringsdato: 27.Jul.2011 kl. 23:17
Hej,
 
Jeg har brugt denne kode adskillige gange, prøv at kigge lidt på den.
Du skal kopiere koden ind i et tomt modul og rette ting som adresse, emne, filnavn osv.
De ting som umiddelbart skal ændres, er fremhævet med rødt herunder.
 
Kør først 'Print_to_PDF' og derefter 'SendMail'
 
Const BrevFil = "Brev.pdf"
'*** Copyright 2011 - Allan Thustrup Mortensen - Excel-regneark.dk ***
Sub Print_To_PDF()
'Finder brugerens skrivebord
Dim objFolders As Object
Set objFolders = CreateObject("WScript.Shell").SpecialFolders
SaveDir = objFolders("desktop")
'Brev og data konverteres til PDF (Excel 2007 og nyere)
Brev.ExportAsFixedFormat Type:=xlTypePDF, Filename:=SaveDir & Application.PathSeparator & DataFil, Quality:= _
    xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
    OpenAfterPublish:=False
End Sub
Sub Sendmail()
'Finder brugerens skrivebord
Dim objFolders As Object
Set objFolders = CreateObject("WScript.Shell").SpecialFolders
SaveDir = objFolders("desktop")
  Dim olApp As Outlook.Application
  Dim oItem As Outlook.MailItem
  Set olApp = New Outlook.Application
  Set oItem = olApp.CreateItem(olMailItem)
  With oItem
    'Sendes til
    .To = "HER SKRIVER DU EMAILADRESSEN"
    .CC = ""
    .BCC = ""
    'Mail emne
    .Subject = "HER SKRIVER DU EMNET"
    'Mail tekst
    .Body = "HER SKRIVER DU INDHOLDET I MAILEN"
    'Vedhæftet PDF filer
    .Attachments.Add SaveDir & Application.PathSeparator & BrevFil
    'Mulighed for at kræve svar når modtager åbner mailen
    .ReadReceiptRequested = False
    .Send
  End With
'Sletter PDF-fil
Kill SaveDir & Application.PathSeparator & BrevFil
End Sub
 
Virker det hos dig?
 
//Allan


Besked fra: MHH
Posteringsdato: 03.Aug.2011 kl. 19:23
Hej Alle
 
Jeg får disse fejlmeldinger, når jeg prøver med ovenstående makro.
 
uploads/263/Send_1.JPG" rel="nofollow - uploads/263/Send_1.JPG
uploads/263/Send_2.JPG" rel="nofollow - uploads/263/Send_2.JPG
 
Er der nogen der kan hjælpe...
Har ikke særligt meget kendskab, til makro programmering.
 
På forhånd tak for hjælpen
 
MHH


Besked fra: Allan
Posteringsdato: 03.Aug.2011 kl. 21:39
Hej MHH,
 
Prøv følgende:
 
I VBA-Editoren, skal du oprette en reference til Outlook Object Library
Det gøres ved at åbne VBA-Editor
I menuen 'Tools' skal du vælge 'References'
I boksen skal 'Microsoft Outlook xx.0 Object Library' være markeret. (xx er din Excel version)
Når du har markeret denne, skal du gemme din fil.
 
 
 
Emailadressen er sat til ?????, men det ved du sikkert godt.
 
//Allan



Print side | Luk vindue