"Stefan Anderl" wrote:
>
> "Oliver" <Oli...@discussions.microsoft.com> schrieb im Newsbeitrag
> news:E25CBC03-1230-4823...@microsoft.com...
> > Ich möchte per VBA verschiedene Excel-Dateien an verschiedene
> > Emailadressen
> > versenden. Die Dateien liegen alle in einem Verzeichnis. Die Zuordnung,
> > welche Datei an welchen Empfänger geht, habe ich in einer Excel-Tabelle
> > stehen (1. Spalte: Dateiname; 2. Spalte: Emailadresse). Außerdem möchte
> > ich
> > einen, für alle einheitlichen Text einfügen, der ebenfalls in der Datei
> > steht. Vielen Dank für eure Hilfe, Oliver (Excel 2003)
>
> Hallo, das ist das Grundgerüst:
>
> sub email_Senden
>
> Dim outlookvari As Object
> Dim myitem As Object
> dim i as integer
>
> for i = 1 to xx 'xx ist dei Zahl der zu erstellenden Mails
>
> Set outlookvari = CreateObject("Outlook.Application")
> Set myitem = outlookvari.CreateItem(olMailItem)
> myitem.Recipients.Add (Sheets("Tabelle1").cells(i,1) 'hier wird die
> Mail-Adresse des Empfängers ausgelesen, hier in Zelle A1 des Blattes
> Tabelle1!
>
> myitem.Body = "Halli-Hallo" 'das ist der Text
>
> myitem.Attachments.Add Sheets("Tabelle1").cells(i,2) Hier wird der Pfad zum
> Anhang aus der Tabelle gelesen.
> 'Hier wird die Mail-Adresse des Empfängers ausgelesen, hier in Zelle A2 des
> Blattes Tabelle1!
>
> myitem.Send 'und raus ist die Mail!
>
> next i
>
> End Sub
>
> Wichtig: In Excel muß als Verweis Outlook eingetragen sein!
>
> Stefan
>
diese Abfrage kommt von MS Outlook und kann deshalb, soweit mir bekannt ist,
mit Excel nicht umgangen und nicht abgeschaltet werden.
Bis später,
Karin
http://beverly.excelhost.de/
---"Oliver" <Oli...@discussions.microsoft.com> schrieb ...
> Es funktioniert super - vielen Dank. Ich habe aber auch noch eine
> Anschlussfrage. Ich muss bei jeder Email eine Sicherheitsabfrage
> beantworten:
> "Eine Anwendung versucht, automatisch Nachrichten in Ihrem Namen zu
> senden.
> Möchten Sie dies zulassen?" Kann man diese Frage unterdrücken bzw.
> per VBA
> beantworten? Viele Grüße, Oliver
Via VBA selbstverständlich *nicht*.
Sonst wäre die Sicherheitsabfrage ja unsinnig. Sie dient schließlich
nur dazu, dass Würmer und Viren nicht so einfach dein Outlook "entern"
können.
Es gibt dazu Tools, die im Hintergrund laufen und die
Sicherheitsabfragen automatisch (und ohne "Warten") beantworten.
Beispielsweise die Freeware "Express ClickYes". (Ohne Gewähr
meinerseits.) Google einfach mal danach!
--
In der Hoffnung geholfen zu haben, verbleibe ich mit einem leisen
Servus aus Wien,
-Robert Gelbmann-
---
The world is quiet here.
"Oliver" wrote:
> Es funktioniert super - vielen Dank. Ich habe aber auch noch eine
> Anschlussfrage. Ich muss bei jeder Email eine Sicherheitsabfrage beantworten:
> "Eine Anwendung versucht, automatisch Nachrichten in Ihrem Namen zu senden.
> Möchten Sie dies zulassen?" Kann man diese Frage unterdrücken bzw. per VBA
> beantworten? Viele Grüße, Oliver
>
Unter www.microsoft.com/mspress/books/companion/5517.asp "download the book
sample files" gibt es ein Outlook-Formular, mit dem das gewünschte
einstellbar sein soll. Leider kann ich mich derzeit selbst nicht intensiv
damit beschäftigen.
Nach dem Installieren des Downloads findet man das Formular im Zielordner,
Chapter 05, Outlook Security Update, ADMPACK, einfach das Programm ADMPACK
ausführen.
Dann das Formular in Outlook als neues Formular des Dateisystems öffnen!
Stefan
Hmmmmm?
Die Sicherheitabfrage wohl nicht. Aber in einem anderen Thread wollte
der OP ja ursprünglich Mails automatisiert versenden. Und das geht mit
SendKeys _ohne_ das die Sicherheitsabfrage überhaupt erst auftaucht.
So kann man Mails von Excel aus versenden, ohne das ein
Benutzereingriff erforderlich ist.
Peter
---"Peter Schleif" <peter.sch...@gmx.de> schrieb ...
Meine Antwort bezog sich selbstverständlich auf die Frage, ob man
die Sicherheitsabfrage (von Outlook) via VBA abschalten kann.
SendKeys kann insofern ins Auge gehen, als dass man normalerweise
auf einem PC keine 100%-ige Kontrolle darüber hat, welches Programm
die Tasten "abkriegt", da sich ja jederzeit ein Programm in den
Vordergrund schalten (genauer: ein eigenes Fenster aktivieren)
könnte (IM, Outlook-Erinnerungen, Anti-Virus usw. usf.). Zudem
könnte das gewünschte Zielprogramm wegen erhöhter
Prozessorauslastung etc. zu langsam reagieren, womit dann nicht alle
"Tasten" korrekt empfangen werden.
Wenn es um die Frage geht, wie man mit VBA automatisiert E-Mails
versendet, so könnte man auch andere Programmbibliotheken verwenden.
z. B. Microsoft CDO (CDonts). Da dabei ja nicht ein eingerichtetes
Mailprofilt "benutzt" wird, gibt es dann auch keine
Sicherheitsrückfragen. Allerdings muss man dann selbstverständlich
alles genau angeben: SMTP-Server, Loginname & Kennwort (sofern
erforderlich) usw.
ACK.
> Zudem
> könnte das gewünschte Zielprogramm wegen erhöhter
> Prozessorauslastung etc. zu langsam reagieren, womit dann nicht alle
> "Tasten" korrekt empfangen werden.
ACK.
SendKeys ist halt eine absolute Notlösung. Manchmal sind User bereit,
das Risiko einzugehen.
Peter
Ich bin grad faul, haste da mal nen Link zu oder etwas Beispielcode?
Ostergruß aus Kiel
Reiner
--
"Künstliche Intelligenz ist das Perpetuum Mobile der Informatik"
Reiner Wolff schrieb am 24.03.2008
> *Robert Gelbmann* schrieb:
>> Wenn es um die Frage geht, wie man mit VBA automatisiert E-Mails
>> versendet, so könnte man auch andere Programmbibliotheken verwenden.
>> z. B. Microsoft CDO (CDonts).
>
> Ich bin grad faul, haste da mal nen Link zu oder etwas Beispielcode?
...darf ich auch...? ;-)
http://www.rondebruin.nl/cdo.htm
Mit freundlichen Grüssen
Thomas Ramel
--
- MVP für Microsoft-Excel -
[Win XP Pro SP-2 / xl2003 SP-2]
Microsoft Excel - Die ExpertenTipps
Na gut, ausnahmsweise ;-)
> http://www.rondebruin.nl/cdo.htm
Prima, danke.
Sowas ist doch wesentlich eleganter als ein ClickYes und Outlook.
Ich hab' für derartige Zwecke schon 7 verschiedene Varianten, die ich immer
dann nicht finde, wenn ich sie brauche :-)
Nun habe ich wieder einen Eintrag in meiner Linksammlung. Mal sehen, ob ich
den das nächste Mal finde ...
Gruß aus Kiel
Reiner
--
In der Welt der EDV enden Pannen nicht, sondern gehen ineinander über.