Fragensteller
E-Mail erstellen mit Einträgen aus Excel Datenbank

Allgemeine Diskussion
-
Hallo,
ich versuche eine E-Mail mit Einträgen aus einer Datenbank zu erstellen die mittels Knopfdruck in Excel automatisch verschickt werden soll.
Dazu habe ich versucht das Beispiel von Microsoft zu verwenden. Leider scheitert es bereits an der ersten Zeile. Die Verweise habe ich hinzugefügt (System.Web.tlb, System.Web.dll kann ich nicht hinzufügen "Verweis auf angegebene Datei kann nicht hinzugefügt werden").
Verwendeter code:
Dim email As New System.Web.Mail.MailMessage() email.To = "RecipientAddress" email.From = "SenderAddress" email.Body = "MessageText" email.Subject = "SubjectText" email.BodyFormat = Web.Mail.MailFormat.Text System.Web.Mail.SmtpMail.SmtpServer = "SmtpServerName" System.Web.Mail.SmtpMail.Send(email)
Die erste Zeile kann bereits nicht ausgeführt werden, da System.Web nicht gefunden wird. In der Dropdown Auswahl steht nur System.WebClient zur Verfügung.
Kann mir jemand helfen?
Grüße Mathias
- Typ geändert Dimitar DenkovMicrosoft contingent staff, Administrator Freitag, 21. Oktober 2016 10:05 Warten auf Rückmeldung
Alle Antworten
-
Hallo Mathias,
wenn, solltest Du eh System.Net.Mail.MailMessage nehmen, nicht die System.Web Variante, die ist veraltet.
Ob man die .NET Module aber überhaupt in einem VBA Projekt einbinden kann, weiß ich nicht.
Ich würde aber eher auf CDO.Message gehen, das lässt sich einbinden.
http://www.rondebruin.nl/win/s1/cdo.htm
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Hallo Stefan,
Danke für die Info. Wäre vielleicht hilfreich im besagten Beispiel zu erwähnen, dass die System.Web Variante veraltet ist.
Mit der SMTP Methode konnte ich leider nichts verschicken, da ich den Server nicht kenne.
Habe die Outlook Methode von der selbigen Homepage verwendet und sie funktioniert.Gruß Mathias
-
Hallo Mathias,
ich weiß leider nicht, vom welchem Beispiel Du sprichst. Iin der MSDN steht recht deutllich, dass der System.Web.Mail Namespace und die dort enthaltenen Klassen veraltet sind.
https://msdn.microsoft.com/de-de/library/system.web.mail.aspx
Wenn Du keine Daten für einen SMTP Server hast, den Du für den Versand verwenden kannst, hätte auch System.Net.Mail, ... nicht funktioniert.
Wenn dir der Versand über Outlook reicht, ist das Ok. Bedenke nur, dass es auch User geben könnte, die gar kein Outlook haben.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Hallo Stefan,
ich hab den Code von dieser Seite:
https://msdn.microsoft.com/de-de/library/cc464019(v=vs.71).aspx
Ok es steht oben es ist von Visual Studio .NET 2003, aber ich als Laie hab das nicht sofort erkannt.
Ich hab soweit alles was ich brauche, nur eines ist noch etwas störend:
Die Kontrollnachricht die Outlook einblendet finde ich sehr sinnvoll.
Aber leider will ich mit einem Klick mehrere Mails auf einmal verschicken (Mittels for-Iteration ~10), da ist es mühsam wenn für jede Mail das Fenster aufpoppt. Gibt es eine Möglichkeit, dass für 10 Mails nur einmal das Kontrollfenster von Outlook aufpoppt?Btw: Umstellen der Sicherheitseinstellungen von Outlook ist keine Option
Falls nicht muss ich wohl doch irgendwie die SMTP Server Adresse herausfinden.
Lg Mathias
-
Hi,
schau doch in die Outlookeinstellungen, da stehen die Mailserverdaten normalerweise auch drin. Ansonsten kannst Du auch einen belieben SMTP Server nehmen, für den Du Zugangsdaten hast. Es könnte dir zwar passieren, dass die SPF Records der Absenderdomain diesen Host nicht als Sender erlauben aber das kann man ja auch rausfinden.
Ich würde eh empfehlen, das über CDO.Message zu machen. Es sei denn, Du willst, dass die Mails dann automatisch bspw. in Gesendete Objekte im jeweiligen Outlook zu finden sind, das geht dann so nicht.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community