novregen
Goto Top

Mehrere Email Entwürfe aus Outlook 2010 Exchange auf einmal senden

Hallo,

ich habe folgendes Problem, mit einem Drittprogramm werden Berichte als Email mit PDF Format erzeugt, diese können in einen Ordner im Outlook bereitgestellt werden z.B. Entwürfe. Dies sind z.B. 100 Emails alle mit anderen Adressen und jeder hat seinen persönlichen Inhalt. Jetzt bekomme ich die Emails leider nicht auf einmal geschickt. Das heißt ich möchte, wenn das ok dazu da ist diese nicht jede einzelnd zum senden anklicken. Ich habe bereits im Netz nachgeschaut, aber bislang nichts passendes gefunden, nur einen Hinweis auf VBA Programmierung, da habe ich aber keine Ahnung von.
Geht das wirklich nicht mit Outlook Boardmittel ? Wäre euch danbbar für Hinweise.

Danke, Gruß Nov

Content-Key: 194701

Url: https://administrator.de/contentid/194701

Printed on: April 18, 2024 at 10:04 o'clock

Member: colinardo
colinardo Nov 22, 2012 updated at 10:43:47 (UTC)
Goto Top
Also per VBA ginge das mit folgender Methode:
Sub sendDrafts()
    Dim sItems As Selection
    Set sItems = Application.ActiveExplorer.Selection
    If sItems.Count > 0 Then
        For x = 1 To sItems.Count
            If sItems.item(x).Class = OlObjectClass.olMail Then
                    sItems.item(x).Send
            End If
        Next
    Else
        MsgBox "Sie haben kein Nachrichten für den Versand ausgewählt!", vbExclamation  
    End If
End Sub

Das Makro versendet alle Mails die du markierst.

Du baust das Makro wie folgt in Outlook ein:

  1. Drücke ALT-F11
  2. Navigiere in der linken Baumstruktur in folgendes Objekt Microsoft Outlook Objekte\ThisOutlookSession und klicke doppelt auf dieses.
  3. In das erscheinende Fenster kopierst du den obigen Code, und speicherst das Projekt
  4. Jetzt fügst du die Funktion zum Outlook-Ribbon hinzu (Rechtsklick auf das Ribbon,"Menüband anpassen")
  5. Im Fenster links oben "Befehle auswählen" wählst du "Makros". Darunter findest du dann dein gerade erstelltes Makro unter "Projekt1.ThisOutlookSession.sendDrafts".
  6. Dies kannst du nun zu einer Gruppe in der gewünschten Registerkarte hinzufügen.

Eventuell musst du noch im Sicherheitscenter von Outlook die Ausführung von nicht signierten Makros erlauben, oder das Projekt mit einer selbst vergebenen Signatur signieren. (Datei/Optionen/Sicherheitscenter/"Einstellungen für das Sicherheitscenter..." | "Einstellungem für Makros" -> "Alle Makros aktivieren")

Bei weiteren Fragen stehe ich gerne zur Verfügung

Grüße Uwe
Member: novregen
novregen Nov 22, 2012 at 11:01:33 (UTC)
Goto Top
Hallo Uwe,

das scheint auf dem ersten Blick alles zu klappen. Bin begeistert, DANKE dir ! Werde nächste/übernächste Woche einmal gucken, wie es bei Echtdaten funktioniert.


"6.Dies kannst du nun zu einer Gruppe in der gewünschten Registerkarte hinzufügen"

Bin mir nicht sicher ob ich das richtig verstanden habe ? Ich habe den Befehl in der Registerkarte, dann habe ich alle Emails in dem Ordner "xy" markiert und dann den Befehl gedrückt, dann wurden diese alle zusammen gesendet. War Punkt 6 von dir noch anders gedacht ?


Grüße Nov
Member: colinardo
colinardo Nov 22, 2012 updated at 11:04:06 (UTC)
Goto Top
Zitat von @novregen:
Bin mir nicht sicher ob ich das richtig verstanden habe ? Ich habe den Befehl in der Registerkarte, dann habe ich alle Emails in
dem Ordner "xy" markiert und dann den Befehl gedrückt, dann wurden diese alle zusammen gesendet. War Punkt 6 von
dir noch anders gedacht ?

Nein, genau so war das gedacht !
Member: novregen
novregen Sep 30, 2013 at 06:34:31 (UTC)
Goto Top
Hallo Uwe,

es ist zwar schon ein bißchen her, aber vielleicht bist du hier ja auch noch zugegen....

Dein Script hat mir schon gute Dienste geleistet und es funktioniert einwandfrei. Aber jetzt soll der Versand in dem Sinne geändert werden,
das die Mails von eine "allgemeinen" Email Adresse versendet werden. Das heißt nicht mehr aus meinen Entwürfen. Das "allgemeine" Postfach
zb. info@yx.de habe ich im Outlook hinzugefügt. allerdings nützt es nicht, wenn ich meine Entwürfe einfach in das der info verschiebe und dann
das script starte. Es wird als Absender meine Email Adresse genutzt. Fällt dir da was ein wie ich das lösen könnte ?
Member: colinardo
colinardo Sep 30, 2013 at 07:17:43 (UTC)
Goto Top
Hello again novregen,
kein Problem ... in Zeile 4 noch den Namen deines Accounts abändern, feddich
Sub sendDrafts()
    Dim sItems As Selection
    Dim oAccount As Account
    Set oAccount = Application.Session.Accounts("info@xy.de")  
    Set sItems = Application.ActiveExplorer.Selection
    If sItems.Count > 0 Then
        For x = 1 To sItems.Count
            If sItems.Item(x).Class = OlObjectClass.olMail Then
                    sItems.Item(x).SendUsingAccount = oAccount
                    sItems.Item(x).Send
            End If
        Next
    Else
        MsgBox "Sie haben kein Nachrichten für den Versand ausgewählt!", vbExclamation  
    End If
End Sub

Grüße Uwe
Member: novregen
novregen Sep 30, 2013 at 07:42:26 (UTC)
Goto Top
Hallo Uwe,

das frisst er leider nicht. Er verwendet immer meinen Absender, obwohl die Email bei der Erstellung nicht vorbelegt ist mit meinem Absender.
Member: colinardo
colinardo Sep 30, 2013 at 07:45:47 (UTC)
Goto Top
hast du auf dem Exchange überhaupt die Rechte als info@xy.de zu senden ??
Member: novregen
novregen Sep 30, 2013 at 07:55:18 (UTC)
Goto Top
ja habe ich, habe mich als Besitzer eingetragen. info@xy.de öffne ich auch zusatzlich in meinem Postfach Datei -> Kontoeinstellungen -> ändern -> weitere Einstellungen -> Erweitert -> zusätzliche Postfächer öffnen. Ich kann auch manuell das von ändern, dann stellt er die Email als von info@xy.de im Auftrag von "meinem Konto" gesendet da.
Member: colinardo
colinardo Sep 30, 2013 at 08:01:13 (UTC)
Goto Top
Ach so OK, dann muss ich noch was ändern ... bis später
Member: novregen
novregen Sep 30, 2013 at 08:03:43 (UTC)
Goto Top
ok bin gespannt.... schön wäre es natürlich, wenn meine Email Adresse da gar nicht mehr auftaucht, denn wenn jemand darauf antwortet soll das nach Möglichkeit auch an die info@xy.de gehen..
Member: colinardo
colinardo Sep 30, 2013 updated at 08:28:29 (UTC)
Goto Top
In Zeile 7 noch deine E-Mail-Adresse eintragen
Sub sendDrafts()
    Dim sItems As Selection
    Set sItems = Application.ActiveExplorer.Selection
    If sItems.Count > 0 Then
        For x = 1 To sItems.Count
            If sItems.Item(x).Class = OlObjectClass.olMail Then
                    sItems.Item(x).SentOnBehalfOfName = "info@xy.de"  
                    sItems.Item(x).Send
            End If
        Next
    Else
        MsgBox "Sie haben kein Nachrichten für den Versand ausgewählt!", vbExclamation  
    End If
End Sub
Das dein Namen gar nicht mehr auftaucht geht meines Erachtens nur wenn wenn du ein zusätzliches Outlook-Profil mit dem Konto anlegst. Man kann zwar auf dem ExchangeServer in den UserProperties das Sicherheitsrecht Send as konfigurieren(Ich meine damit nicht die Einstellung "Im Auftrag senden" das ist ja was anderes), aber via VBA kann ich die Absendermailadresse des zusätzlich eingebundenen Postfachs nicht ansprechen, bzw. festlegen.
Sollte sich doch noch irgendwann eine Lösung ergeben werde ich mich melden.

Grüße Uwe
Member: colinardo
colinardo Sep 30, 2013 updated at 08:34:31 (UTC)
Goto Top
Habe gerade einen Test gemacht, also wenn du auf dem Exchange die Berechtigung "Send as" für deinen Useraccount in den Postfachbenutzer "info@xy.de" setzt und du den obigen Code nutzt, steht als Absender nur noch "info@xy.de" drin.
Siehe auch: http://technet.microsoft.com/en-us/library/bb676368%28v=exchg.141%29.as ...

Grüße Uwe
Member: novregen
novregen Sep 30, 2013 at 09:24:26 (UTC)
Goto Top
Vielen Dank Uwe, das klappt soweit. Da info@xy als Hauptabsender drin steht ist das schon nicht schlecht, also wer auf Antworten klickt sendet an info@xy.de
Member: novregen
novregen Sep 30, 2013 at 09:28:22 (UTC)
Goto Top
Hatte deinen weiteren Eintrag nicht gesehen. OK muss ich mal gucken ob ich mich da ran traue das zu ändern.
Member: novregen
novregen Sep 30, 2013 at 09:48:38 (UTC)
Goto Top
Also in der Exchange Verwaltungskonsole -> Empfängerkonfiguration -> Postfach -> info@xy.de -> rechte Maustaste - Berechtigungen senden als verwalten -> Eintragung meines Accounts.... ..muss ich was falsch gemacht haben, bei mir steht weiterhin meineEmail im Auftrag von info@xy.de
Member: colinardo
colinardo Sep 30, 2013 updated at 09:58:13 (UTC)
Goto Top
Starte dein Outlook mal neu, das hat die Einstellung wahrscheinlich noch nicht übernommen...
Member: novregen
novregen Sep 30, 2013 at 10:07:32 (UTC)
Goto Top
Leider bislang kein Erfolg. Habe auch festgestellt, das ich unter info@xy.de Postfach -> Eigenschaften -> Nachrichtenübermittlungseinstellungen -> Zustelloptionen -> mich schon als Berechtigt eingetragen hatte. Wenn ich das rausnehmen bekomme ich eine Fehlermeldung das ich nicht berechtigt bin im Auftrag von info zu versenden und die Mail verbleibt im Ordner.
Member: novregen
novregen Sep 30, 2013 at 11:16:53 (UTC)
Goto Top
Jetzt funktioniert es.... wahrscheinlich lag es am exchange, das die Eigenschaft noch nicht ausgerollt war. vielen vielen Dank !
Member: tatyana
tatyana Apr 23, 2015 at 08:40:05 (UTC)
Goto Top
Hallo zusammen,
bin blutiger Anfänger in Outlook-VBA-Programmierung und habe Euren Code verwendet, um markierte Mails aus dem Entwurf-Ordner zu versenden. Leider gibt mir Outlook eine Fehlermeldung.

"Laufzeitfehler----- Diese Methode kann nicht mit einem Inlineantwort-E-Mail-Element verwendet werden."

Dieser Fehler wird in der Zeile sItems.Item(x).Send ausgegeben.

Ich habe Windows 7 und Outlook 2013 (Excange-Konto). Muss man eventuel bei Outlook 2013 etwas beachten?

Besten Dank Vorab!!!

LG Tatyana
Member: tatyana
tatyana Apr 24, 2015 at 07:40:32 (UTC)
Goto Top
Hi,
habe gefunden, wo das Problem lag.
Man muss unter Optionen/E-Mail/Antworten und Weiterleitungen das Hackchen unter "Antworten und Weiterleitungen in neuem Fenster öffnen" aktivieren.

LG, Tatyana