none
VBA Makro für Absenderänderung in Outlook 2016 RRS feed

  • Frage

  • Guten Tag,

    wir benutzen folgendes Makro um bei Bedarf im Postausgang die Absender-Emailadresse zu ändern. Seit Office 2016 funktioniert es nicht mehr.

    Public Sub AbsenderAendern()

        Dim olNs As Outlook.NameSpace

        Dim olOutbox As Outlook.MAPIFolder

        Dim olItem As Object

        Dim olEmail As Outlook.MailItem

        

        Set olNs = GetNamespace("MAPI")

        Set olOutbox = olNs.GetDefaultFolder(olFolderOutbox)

        

        For Each olItem In olOutbox.Items

            If olItem.Class = olMail Then

                Set olEmail = olItem

                With olEmail

                    .SentOnBehalfOfName = "platzhalter@test.de"

                    .Save

                    .Send

                End With

            End If

        Next

    End Sub

    Zur Umgebung: Exchange, Office 2016 auf einem Terminalserver 2012R2. Vorher lief das Makro lokal auf Office 2010/13 mit dem selben Exchangeserver. Manuelles Ändern und Absenden mit der gewünschten Adresse funktioniert.

    Das Makro funktioniert in Office 2010 und 2013. In 2016 wird das Makro ohne Fehler ausgeführt, aber es ändert nicht den Absender.

    MfG



    • Bearbeitet ViDi1234 Dienstag, 21. Juni 2016 12:49
    Dienstag, 21. Juni 2016 12:47

Alle Antworten

  • Moin, hast Du mal versucht, einen Log zu schreiben? Einfach mal, um zu schauen, welche Mails angefasst werden und ob nach dem Save die Adresse tatsächlich verändert wird. Und falls Du es nicht versucht hast, woher weißt Du, dass das Makro ausgeführt wird? Wie genau haltet ihr die Mails in der Outbox zurück, damit das Makro ablaufen kann?

    Evgenij Smirnov

    msg services ag, Berlin -> http://www.msg-services.de
    my personal blog (mostly German) -> http://it-pro-berlin.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    In theory, there is no difference between theory and practice. In practice, there is.

    Dienstag, 21. Juni 2016 13:04
  • Hi,

    vielen Dank für die schnelle Antwort. Wir nehmen den Hacken bei "Bei bestehender Verbindung sofort senden" raus, so dass alle E-Mails erstmal im Postausgang landen. Zur Überprüfung haben wir eine Variable zum Anzeigen der Adresse gesetzt, und Makro Schritt für Schritt ablaufen lassen und am Ende sah man, dass die Adresse geändert, aber anscheinend nicht gespeichert wird.

    <EDIT>

    Habe gerade lokal auf einem PC Office 2016 installiert und Makro funkionierte. Das heißt es liegt wahrscheinlich an den Rechten auf dem Terminalserver. Melde mich wenn ich was gefunden habe.

    MfG

    Vitali Dick



    • Bearbeitet ViDi1234 Dienstag, 21. Juni 2016 14:11
    Dienstag, 21. Juni 2016 13:38
  • Moin, es gibt Unterschiede zwischen Cache Mode und Online Mode, was das angeht. Auf dem TS wirst Du i.d.R. im Local Mode sein, auf dem Client evtl. im Cache Mode.

    Evgenij Smirnov

    msg services ag, Berlin -> http://www.msg-services.de
    my personal blog (mostly German) -> http://it-pro-berlin.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    In theory, there is no difference between theory and practice. In practice, there is.

    Dienstag, 21. Juni 2016 14:09
  • Hi, vielen Dank für den Tip. Habe es gerade lokal ausprobiert, das Makro geht nur im Cache Modus.

    MfG

    Dienstag, 21. Juni 2016 14:25
  • Ja, das ist dann doof :-(

    Evgenij Smirnov

    msg services ag, Berlin -> http://www.msg-services.de
    my personal blog (mostly German) -> http://it-pro-berlin.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    In theory, there is no difference between theory and practice. In practice, there is.

    Dienstag, 21. Juni 2016 14:31