Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

E-Mail Absenderkonto via VBA ändern

Betrifft: E-Mail Absenderkonto via VBA ändern von: lee
Geschrieben am: 06.10.2014 17:03:26

Hallo zusammen,

habe folgenden Code zusammengebaut, aber beim Absender habe ich ein Problem. Das Programm Outlook mit dem PDF Anhang wird geöffnet, aber der Absender ändert sich nicht. Vielleicht kann mir jemand weiterhelfen?

Danke+Gruß
lee

Sub AlsPDFSpeichern_und_senden()

Dim pdfName As String
Dim pdfOpenAfterPublish As Boolean
Dim olApp As Object
Dim strStandDatum As String
Dim strWorkbook As String



Rem Rückfragen, ob Datei nach dem Erstellen geöffnet werden soll
If MsgBox("Soll die PDF-Datei nach dem Erstellen angezeigt werden?", vbYesNo, "PDF anzeigen?") = _
 vbYes Then pdfOpenAfterPublish = True

Rem Pfad und Name der PDF-Datei
strStandDatum = Left(Date, 2) & Right(Left(Date, 5), 2) & Right(Date, 4) ' z.B. 02102014
strWorkbook = ActiveWorkbook.Name
pdfName = ThisWorkbook.Path & "\test " & strStandDatum & ".pdf"

Rem PDF-Datei erstellen. Funktioniert nur in Excel 2007 oder höher, nicht in Excel 2003 oder ä _
lter
Workbooks(strWorkbook).Sheets("Report").ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdfName,  _
_
                                   Quality:=xlQualityStandard, IncludeDocProperties:=False,  _
IgnorePrintAreas:=True, _
                                   OpenAfterPublish:=IIf(pdfOpenAfterPublish, True, False)
                                   
                                   
Rem Email erstellen
Set olApp = CreateObject("Outlook.Application")
    With olApp.CreateItem(0)
              .TO = Workbooks(strWorkbook).Sheets("E-Mail").Cells(1, 2).Value
              '.CC = Range("Z2").Value
              .Subject = Workbooks(strWorkbook).Sheets("E-Mail").Cells(2, 2).Value & Date
              .htmlBody = Workbooks(strWorkbook).Sheets("E-Mail").Cells(3, 2).Value & "
" & " _
" & Workbooks(strWorkbook).Sheets("E-Mail").Cells(4, 2).Value & "
" & "
" & Workbooks(strWorkbook).Sheets("E-Mail").Cells(6, 2).Value & "
" & Workbooks(strWorkbook).Sheets("E-Mail").Cells(7, 2).Value & "
" & Workbooks(strWorkbook).Sheets("E-Mail").Cells(8, 2).Value .Attachments.Add pdfName .SendUsingAccount = .Session.Accounts.Item("mustermann@mustermann.com") .Display End With Rem Boolean-Variable "pdfOpenAfterPublish" zurücksetzen pdfOpenAfterPublish = False End Sub

  

Betrifft: AW: E-Mail Absenderkonto via VBA ändern von: mumpel
Geschrieben am: 06.10.2014 18:09:27

Hallo!

1. Ohne "Set" ist "SendUsingAcount" nicth möglich. Setze also ein Set vor die Zeile.
Set .SendUsingAccount = .Session.Accounts.Item("Kontoname")

2. "SendUsingAccount" möglichst vor "To" initialisieren.

3. "SendUsingAccount" funktioniert nur wenn für jedes Emailkonto eine eigene PST-Datei (ein eigenes Konto) in Outlook existiert.

Gruß, René


  

Betrifft: AW: E-Mail Absenderkonto via VBA ändern von: lee
Geschrieben am: 07.10.2014 12:21:52

Hallo Rene, danke für die Hinweise!!

Gruß
lee


  

Betrifft: AW: E-Mail Absenderkonto via VBA ändern von: lee
Geschrieben am: 07.10.2014 14:52:38

Hallo zusammen,

ich habe mein Problem mit dem folgenden Code gelöst:

.SentOnBehalfOfName = ("mustermann@muster.de")

Super!Gruß
lee


 

Beiträge aus den Excel-Beispielen zum Thema "E-Mail Absenderkonto via VBA ändern"