Das Clever-Excel-Forum.de - Treffen
findet vom 15. - 17. September 2017 in Thüringen / Region Großer Inselsberg statt. Hotelbuchung ab sofort möglich.


Excel soll mit Visual Basic Mail versenden als PDF
#1
Hallo,
Ich bin neu hier im Forum und habe mich auch noch nicht vorgestellt.Das werde ich auch noch baldmöglichst nachholen.

Natürlich habe ich eine Frage zu Excel. Genauer zu Visual Basic in Excel:
Ich habe eine Excel-Datei mit mehreren Blattregistern / Tabellenreitern. Eine Tabelle davon möchte ich gerne mit einem Macro automatisch per Email versenden. Ich versuche nun schon eine Zeit lang aber ich bekomme es nicht hin, nur das die ganze Arbeitsmappe als PDF versendet wird bzw. nur die eine Seite, aber dann nicht als PDF. Ich hänge gerade an dem Punkt, und hoffe man kann mir hier helfen um meinen Lapsus zu beseitigen.

Hier der Code, den ich mir erlesen und zusammengestückelt habe. Damit sende ich die gesamte Arbeitsmappe als PDF.
69
Code:
Sub sendMail()
Dim mePDFD As String
Dim MyOutApp As Object, MyMessage As Object




    ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        ThisWorkbook.Path & "\testPDF.pdf", Quality:=xlQualityStandard _
        , IncludeDocProperties:=False, IgnorePrintAreas:=False, _
        OpenAfterPublish _
        :=False


mePDFD = ThisWorkbook.Path & "\testPDF.pdf"
Set MyOutApp = CreateObject("Outlook.Application")
Set MyMessage = MyOutApp.CreateItem(0)
    With MyMessage
        .To = "info@test.dee"
        .Subject = "Bestellung der Speisen für kommende Woche" 'Betreffzeile
        .body = "Sehr geehrte Damen und Herren, anbei die Bestellung für" & _
          "kommende Woche. Vielen Dank"
        .Attachments.Add mePDFD
        .Display
        '.Send
        Kill mePDFD
    End With
    Set MyOutApp = Nothing
    Set MyMessage = Nothing
End Sub

Vielen vielen leiben Dank.
to top
#2
Hallo,

so sollte das aktive Blatt exportiert werden (aber ungetestet):

Code:
Sub sendMail()
  Dim mePDFD As String
  Dim MyOutApp As Object, MyMessage As Object
  
  mePDFD = ThisWorkbook.Path & "\testPDF.pdf"

  ActiveSheet.Copy
  
  ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:=mePDFD, _
    Quality:=xlQualityStandard, IncludeDocProperties:=False, _
    IgnorePrintAreas:=False, OpenAfterPublish:=False
  ActiveWorkbook.Close False

  Set MyOutApp = CreateObject("Outlook.Application")
  Set MyMessage = MyOutApp.CreateItem(0)
  With MyMessage
    .To = "info@test.dee"
    .Subject = "Bestellung der Speisen für kommende Woche" 'Betreffzeile
    .body = "Sehr geehrte Damen und Herren, anbei die Bestellung für" & _
      "kommende Woche. Vielen Dank"
    .Attachments.Add mePDFD
    .Display
    '.Send
  End With
  
  Kill mePDFD
  Set MyMessage = Nothing
  Set MyOutApp = Nothing
End Sub

Gruß Uwe
to top
#3
Vielen lieben Dank.

Ich habe noch folgende Änderung gemacht, und dann ging alles, wie ich es haben wollte.

Herzlichen Dank für die schnelle Hilfe.

Code:
Sub sendMail()
  Dim mePDFD As String
  Dim MyOutApp As Object, MyMessage As Object
  
  mePDFD = ThisWorkbook.Path & "\testPDF.pdf"

  Sheets("Fertig").Copy
  
  ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:=mePDFD, _
    Quality:=xlQualityStandard, IncludeDocProperties:=False, _
    IgnorePrintAreas:=False, OpenAfterPublish:=False
  ActiveWorkbook.Close False

  Set MyOutApp = CreateObject("Outlook.Application")
  Set MyMessage = MyOutApp.CreateItem(0)
  With MyMessage
    .To = "info@test.dee"
    .Subject = "Bestellung der Speisen für kommende Woche" 'Betreffzeile
    .body = "Sehr geehrte Damen und Herren, anbei die Bestellung für" & _
      "kommende Woche. Vielen Dank"
    .Attachments.Add mePDFD
    .Display
    '.Send
  End With
  
  Kill mePDFD
  Set MyMessage = Nothing
  Set MyOutApp = Nothing
End Sub

Danke nochmal :-)[/code]
to top


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  E-Mail mit Text als Link AlpenZwerg 5 77 01.12.2016, 19:52
Letzter Beitrag: mumpel
  Medikamenten bestellung Ist/soll stand Saylles 5 126 19.11.2016, 07:28
Letzter Beitrag: WillWissen
  Visual Basic funktioniert nicht - Mac jojorauschjo 9 116 15.11.2016, 14:19
Letzter Beitrag: RPP63
  E-Mail aus Outlook in Excel-Gruppierung hinzufügen MacTop 6 113 15.11.2016, 11:26
Letzter Beitrag: MacTop
  E-Mail Benachrichtigung nach Änderung an einer Excel-Datei mrmbj 1 65 11.11.2016, 17:09
Letzter Beitrag: schauan
  VBA - 2. Bindestrich soll Zeilenumbruch sein joline12 4 69 09.11.2016, 14:29
Letzter Beitrag: BoskoBiati
  Kein Plan wie ich rangehen soll zmichael27 10 188 05.11.2016, 00:16
Letzter Beitrag: coemm
  Excel soll etwas rechnen wenn was bestimmtes eingegeben wird SvenjaSch 6 102 27.10.2016, 12:28
Letzter Beitrag: SvenjaSch
  Makro > E-Mail > Wort WAHR im Text Brotmaschine 6 147 21.10.2016, 06:52
Letzter Beitrag: Brotmaschine
  E-Mail automatisch aus Excel versenden Garfield123 31 860 20.09.2016, 18:21
Letzter Beitrag: Käpt'n Blaubär

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste