• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Macro excel bestand opslaan als PDF en dan in e-mailsjabloon plaatsen

Status
Niet open voor verdere reacties.

CVGhulp

Gebruiker
Lid geworden
17 nov 2015
Berichten
34
Hoi allen,

Heb een macro die ervoor zorgt dat ik een werkblad in excel kan opslaan als PDF bestand (zie hieronder).
Nu zou ik het helemaal leuk vinden als het PDF bestand zowel opgeslagen wordt op de aangegeven locatie EN in een mailsjabloon wordt geplaatst. Het verzenden van de mail wil ik nog wel zelf doen.

Iemand een idee?

Ik gebruik trouwens Excel en Outlook van 2013.


Sub Knop4_Klikken()
'Werkblad opslaan
Range("A1:Q50").Select
Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:="H:\Test\" & Sheets("Totaal").Range("R2").Value & ".pdf"
Range("A1").Select
MsgBox "Uw document is opgeslagen", vbInformation
End Sub
 
Laatst bewerkt:
Doe eens de test:
Code:
Sub mail_werkblad_integraal_met_sendmail()
'Werkblad opslaan
   Range("A1:Q50").ExportAsFixedFormat Type:=xlTypePDF, Filename:="H:\Test\" & Sheets("Totaal").Range("R2").Value & ".pdf"
    With ActiveWorkbook
        .Sheets(1).Copy
        .SendMail "cobbe@mail.be", "onderwerp"
        .Close False
    End With
  MsgBox "Uw document is opgeslagen en gemaild !", vbInformation
End Sub
 
Laatst bewerkt:
Dank je wel Cobbe, wel paar probleempjes:

- Tabblad (dus niet het hele werkblad) moet opgeslagen worden als PDF bestand (die macro had ik)
- Daarnaast zou ik het fijn vinden dat mail niet direct verstuurd wordt.

ps: Weet niet of het te veeleisend is maar kan ik ook standaard de VAN en AAN en CC en ONDERWERP in macro zetten of kan dat niet eens?
 
Even aanvullend op vorig bericht.

Dank je wel Cobbe, het werkt wel paar probleempjes:

- Tabblad (dus niet het hele werkblad) moet opgeslagen worden als PDF bestand (die macro had ik) maar in mail wil ik ook graag de PDF versie die ik ook had opgeslagen.
- Daarnaast zou ik het fijn vinden dat mail niet direct verstuurd wordt.

ps: Weet niet of het te veeleisend is maar kan ik ook standaard de VAN en AAN en CC en ONDERWERP in macro zetten of kan dat niet eens?
 
Bedankt voor je reactie Edmoor.

Maar als ik macro van Cobbe test dan stuurt deze mij de hele werkmap WEL naar mijn outlookmailbox.

Enige aanvulling die ik graag zou willen is dat bijlagen een PDF bestand is zoals eerst wordt opgeslagen (dus tabblad Totaal). Verder vraag ik mij af of ik ook een AAN, VAN, ONDERWERP en TEKST kan instellen en dat ik misschien zelf op verzendknop kan klikken (voor de zekerheid)
 
En je heb wel de link gelezen waar ik naar verwees?
 
Excuses Edmoor. Heb het denk ik gevonden via Helmij zoeken.
Doordat ik nu niet meer kan inloggen op werkomgeving kan ik het niet testen. Zal ik maandag kunnen doen.



Sub Mail_ActiveSheet()
Dim Pad As String
Dim Bst As String
Dim Otv As String

Dim OutApp As Object
Dim OutMail As Object

Pad = "H:\Test"
Otv = "voorbeeld@test.nl"
Bst = Format(Date, "dd-mm-yy") & " " & Format(Time, "h-mm-ss") & ".pdf"

Sheets("Totaal").Range("A1:I42").ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=Pad & "\" & Bst, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False

Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)

With OutMail
.to = Otv
.CC = ""
.BCC = ""
.Subject = "Periodieke rapportage"
.Body = "Bij deze de bloedsuikerwaarden"
.Attachments.Add Pad & "\" & Bst
.Send
End With

End Sub
 
Kan het zo ook even niet testen maar ziet er goed uit :thumb:
Wijzig .Send in .Display als je zelf op de verzendknop wilt kunnen drukken.
 
Laatst bewerkt:
Test is succesvol. Heb alleen wel een vraagje. Nu wel men graag dat het bestand OOK wordt opgeslagen als .XLSX

Dus precies zoals onderstaande PDF opslaan én mailen. Maar daarnaast ook opslaan als XLSX op een andere locatie. Kan dit?


Sub Knop4_Klikken()
'Werkblad opslaan en mailen
Dim Pad As String
Dim Bst As String
Dim Otv As String

Dim OutApp As Object
Dim OutMail As Object

Pad = "H:\Test"
Otv = "test@mail.com"
Bst = Sheets("Totaal").Range("R2").Value & ".pdf"

Sheets("Totaal").Range("A1:P42").ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=Pad & "\" & Bst, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False

Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)

With OutMail
.to = Otv
.CC = ""
.BCC = ""
.Subject = "Rapportage"
.Body = "Periodieke rapportage"
.Attachments.Add Pad & "\" & Bst
.Display
End With

End Sub
 
Dat kan je op deze manier doen:
Code:
    Sheets("Totaal").Copy
    Application.DisplayAlerts = False
    ActiveWorkbook.SaveAs Filename:="H:\Test\Test.xlsx", FileFormat:=51
    Application.DisplayAlerts = True
    ActiveWorkbook.Close
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan