Office: (Office 2010) Mail mit Anhang aus Access senden

Helfe beim Thema Mail mit Anhang aus Access senden in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich habe vor, aus Access automatisiert Emails zu versenden. Datenbasis hierzu liefert eine Abfrage. Zum Thema, wie man Serienmails aus... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Bebbie, 22. Juni 2016.

  1. Mail mit Anhang aus Access senden


    Hallo zusammen,

    ich habe vor, aus Access automatisiert Emails zu versenden. Datenbasis hierzu liefert eine Abfrage.
    Zum Thema, wie man Serienmails aus Access sendet, habe ich schon eine Anleitung gefunden. Diese behandelt aber nicht das Anfügen unterschiedlicher Anhänge je Empfänger.

    Mein Abfrageergebnis sieht von den Spalten etwa so aus:
    Bestellnummer LieferdatumSoll Artikel offeneMenge verfügbareMenge Mailempfänger

    Ich will jetzt an jeden Mailempfänger der Abfrage eine automatische Mail senden, an die eine Excel Datei angehängt ist, die quasi das Abfrageergebnis reduzuiert auf die Zeilen des jeweiligen Mailempfängers enthält.
    Ich habe so in Richtung Bericht gedacht, bei dem ich ja anhand einer Info gruppieren kann. Nur soll eben kein PDF sondern eine Excel Datei herauskommen.
    Den Bericht als Excel Datei statt PDF zu exportieren scheint keine adäquate Lösung zu sein. Bei einer anderen Access Datei, in der ich einen Bericht nutze, ist hier das Layout in Excel sehr ungünstig.

    Hat jemand eine Idee, wie ich mein Problem lösen kann?

    :)
     
    Bebbie, 22. Juni 2016
    #1
  2. Hallo,

    das kannst du mit einer Recordset-Schleife über die Datensätze der Abfrage lösen, in der du
    1. die Daten mit der TransferSpreadsheet-Methode exportierst und
    2. die Mail inkl. Anlage verschickst

    Für die TransferSpreadsheet-Methode brauchst du eine gespeicherte Abfrage.
    Diese könnte sich den benötigten Parameter mittels Funktionsaufruf holen.

    Wenn du genauere Informationen brauchst, bitte gezielt nachfragen.
     
    MaggieMay, 24. Juni 2016
    #2
  3. Hallo,

    habe mir jetzt mal für den einfachen Mailversand einer Abfrage ein Makro erstellt und das Makro in VBA Code umgewandelt.

    DoCmd.SendObject acQuery, "Bestellungen", "ExcelWorkbook(*.xlsx)", "max.mustermann@web.de", "", "", "Test Mailversand Outlook", "Test Funktion Mailversand aus Outlook mit Anhang", True, ""

    Zusätzlich habe ich jetzt eine Tabelle mit 2 Spalten:
    Filterwert für die Abfrage, Emailadresse

    Die einzelnen Datensätze dieser Tabelle würde ich dann über die Recordset Schleife durchlaufen. Die Email-Adresse bekomme ich wohl über rs.fields("Email").
    Wie muss ich jetzt den obigen Code anpassen, dass er für eine bestimmte Spalte in der Abfrage den Filterwert des Datensatzes setzt?

    Danke.
     
    Bebbie, 26. Juni 2016
    #3
  4. Mail mit Anhang aus Access senden

    Code:
     
    ebs17, 27. Juni 2016
    #4
  5. Ich würde empfehlen, für die Angabe des Ausgabeformats die vordefinierten acFormat...-Konstanten zu verwenden, in diesem Fall acFormatXLSX. Damit vermeidet man potenzielle Tippfehler.
    Die Definition gemäß Objektkatalog ist übrigens:
    Code:
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    sonic8, 27. Juni 2016
    #5
  6. Habe das mal versucht umzusetzen, komme aber nicht ganz klar.

    Zur Zeile
    Set qd = db.CreateQueryDef("Export", "SELECT * FROM Bestellungen WHERE 1 = 0")

    Select * heißt ja, dass er alle Spalten der Abfrage nehmen soll. Das passt soweit.
    WHERE 1 = 0 ist denke ich der Platzhalter für den Filter, da du das genaue Filterkritierium ja nicht kennst.
    Habe das dann mal testweise auf WHERE Kunde = "Mustermann" geändert um zunächst mal den Filter zu testen. Der Anhang enthält aber weiterhin alle Daten und der Filter ist nicht berücksichtigt.
    Zudem muss der Filter glaube ich irgendwie in die Schleife, da der Filterwert je Datensatz angepasst werden müsste.

    Noch mal kurz zusammengefasst:
    - Tabelle Kunden enthält Spalten: Kunde, Mailempänger
    - Abfrage Bestellungen enthält die Spalte Kunde auch und soll entsprechend reduziert auf den jeweiligen Kunden an den Mailempfänger des Datensatzes gesendet werden
     
    Bebbie, 27. Juni 2016
    #6
  7. Hier wird schlicht ein Abfrageobjekt erzeugt, weil SendObject eines benötigt. Die SQL-Anweisung dabei ist wurscht, weil sie in der Schleife laufend geändert wird - schon bemerkt?

    ... erzeugt ein leeres Recordset (nicht erfüllbarer Filter). Warum sollte man unbenötigte Daten erst laden? Ohne geht schneller.

    Noch mal kurz zusammengefasst:
    Hast Du nur über den Code nachgedacht oder auch schon so wie er ist ausprobiert?
    Dass man den * für alle Felder durch die Liste der Felder, die man wirklich benötigt austauscht - diesen Kraftakt traue ich eigentlich jedem zu, dies eigenständig und kommentarlos vorzunehmen.

    @sonic8: Die SendObject-Anweisung hatte ich übernommen wie sie war mit der Unterstellung, dass sie richtig ist. Ich hatte nur die Anpassung an variable Inhalte bezüglich der Schleife geachtet.
     
    ebs17, 27. Juni 2016
    #7
  8. Mail mit Anhang aus Access senden

    Ich denke schon über die Codes nach, weil ich sie auch verstehen will. In dem Fall habe ich dann wohl zu viel geändert. Habe es jetzt geschafft, den Code an meine Datenbank anzupassen.
    Jetzt läuft es, wie es soll.

    Danke.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Bebbie, 27. Juni 2016
    #8
  9. Hallo,

    über den Code läuft der Export. Im Hintergrund wird da wohl die Exportfunktion von Access mit der Option "Exportieren von Daten mit Formatierung und Layout" genutzt. Ist es möglich, die Daten auch ohne Formatierung anzuhängen? Würde ein wenig besser passen.
     
    Bebbie, 27. Juli 2016
    #9
  10. Sie wird an der Stelle auch überhaupt noch nicht benötigt, es genügt völllig, den SQL-Code vor Ausführung der Abfrage zuzuweisen.

    Wie kommst du darauf? Was für eine Formatierung könnte denn wohl aus einer neu erstellten Abfrage übernommen werden?
    Was genau an der Ausgabe gefällt dir nicht?
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    MaggieMay, 27. Juli 2016
    #10
  11. Das Ergebnis in den Mailanhängen gleicht von der Formatierung dem, wenn ich die Abfrage manuell ausführe und mit der Option "Exportieren von Daten mit Formatierung und Layout" manuell exportiere.
    Er hat da einiges an Zeilenumbrüchen drin, was nicht so schön ist.

    Leider ist es wohl nicht so ohne Weiteres möglich, eine .csv Datei über SendObject zu versenden.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Bebbie, 27. Juli 2016
    #11
  12. Eine vorhandene Abfrage ist auch ein Abfrageobjekt. Wenn man eines hat, kann man es ändern. Wenn man keines hat (0-Anfang), muss man für die Methode eines erstellen.

    Eine CSV ist eine Textdatei mit der Dateiendung CSV: CSV - Trallallalla

    Probiere daher mal den Export als Text statt als Excel.
     
  13. Mail mit Anhang aus Access senden

    Dann hängt er mir aber eine .txt Datei an die Email. Ich hätte aber wenn dann gerne eine .csv Datei
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    Bebbie, 27. Juli 2016
    #13
  14. Das Umbenennen müsste dann der Empfänger, wenn er es wünscht oder braucht, vornehmen. Der Inhalt ist IDENTISCH.

    Oder aber DU investierst etwas mehr Arbeit und wechselst von der simplen SendObject-Methode zu Outlook-Automation. Dort kannst Du dann Mails mit beliebigen Anhängen versehen.
     
  15. Hallo zusammen,
    ich habe diesen Beitrag gefunden und versucht diesen auf meine Datenbank umzusetzen. Leider scheitere ich daran.

    Ich habe eine Abfrage (qrMail_offen_BE_MA) die eine Auflistung von Mitarbeitern und deren Einsatztermine beinhaltet. Nun soll jeder Mitarbeiter seine Einsatztermine als PDF-Anhang per Mail erhalten. Es soll also als Schleife laufen, bis alle Mitarbeiter durch sind. Ich erhalte bei diesem Code allerdings den Laufzeitfehler 2498 "Sie haben für eines der Argumente einen Ausdruck eingegeben, der nicht den für das Argument erforderlichen Datentyp hat." Der Fehler liegt beim SendObject bei .Fields ("mitmail"). Gebe ich hier eine Mailadresse an, funktioniert es. Ich erhalte allerdings dann alle Termine.

    Kann mir jemand weiterhelfen?

    Code:
     
    christin84, 16. September 2019
    #15
Thema:

Mail mit Anhang aus Access senden

Die Seite wird geladen...
  1. Mail mit Anhang aus Access senden - Similar Threads - Mail Anhang Access

  2. PDF als E-Mail Anhang nur die erste Seite

    in Microsoft Word Hilfe
    PDF als E-Mail Anhang nur die erste Seite: Hallo liebes Forum, Den u. s. Code habe ich mir zusammengebastelt. Das Makro sorgt dafür, dass die Datei als PDF in eine neue E-Mail angehängt wird. Außerdem werden noch Betreff und Text gefüllt....
  3. Kopieren eines Anhangs eines PDF-Formulars in eine neue Mail

    in Microsoft Outlook Hilfe
    Kopieren eines Anhangs eines PDF-Formulars in eine neue Mail: Schönen guten Morgen, ich habe folgendes Problem. Ich bekomme ein PDF-Formular (Formular1.pdf) per Mail. In diesen Formular ist ein weiters Formular (Formular2.pdf) angehängt. Mit einem Makro...
  4. VBA bestimmte Mail Anhänge abspeichern funktioniert nur ab+zu

    in Microsoft Outlook Hilfe
    VBA bestimmte Mail Anhänge abspeichern funktioniert nur ab+zu: Hallo zusammen, ich nutze folgenden VBA Code schon einiger Zeit. Lesen der Anhänge meiner IPCam mails und speichere diese in einem bestimmten Ordner. Was mir immer wieder auffällt ist, dass beim...
  5. aus Excel Mail versenden mit mehreren Anhängen

    in Microsoft Excel Hilfe
    aus Excel Mail versenden mit mehreren Anhängen: Guten Abend in die Runde, ich habe hier ein Makro, das eine Mail pro Empfänger mit einem Anhang erstellt. Nun kann es sein, dass der Empfänger mal eine Datei bekommt, manchmal 3,4 oder gar keine....
  6. Anhang mit PDF wird in .pd_ umbenannt

    in Microsoft Outlook Hilfe
    Anhang mit PDF wird in .pd_ umbenannt: Hallo Zusammen, ich habe seit ein paar Tagen ein komisches Phänomen. Ich nutze die aktuelle Version von Outlook 365. Outlook hat plötzlich vor ein paar Tagen, alle Mail-Anhänge mit der Endung...
  7. mit VBA eine Serienbrief-Mail mit mehreren Anhängen erstellen

    in Microsoft Word Hilfe
    mit VBA eine Serienbrief-Mail mit mehreren Anhängen erstellen: Hallo zusammen, ich habe die Anforderung eine Mail mit 3 Anhängen an ca. 900 Empfänger zu verschicken. Die Mailkontakte habe ich in einer Excel-Datei vorliegen. Ich hatte es über die...
  8. Automatischer Anhang an eine E-Mail

    in Microsoft Outlook Hilfe
    Automatischer Anhang an eine E-Mail: Hallo zusammen, gibt es in Office die Möglichkeit, dass eine bestimmte .pdf Datei, automatisch an jede E-Mail angehängt wird ? Habe gelesen, dass es per VBA wohl klappen soll, davon habe ich...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden