Excel makro

Guten Tag,

bin total verzweifelt…ich muss ein makro erstellen, welches in der Lage ist eine Liste von Email Adressen aus einer exceldatei A in ein array zu speichern,
dann soll eine email erstellt werden an die eine andere excel datei b angehaengt werden soll,
nun soll diese an die in Liste genannten empfaenger geschickt werden…
ich hab schoin ein bisl was geschrieben, aber es tauchen dauerd fehlermeldungen auf…

waere dankbar fuer ein bils hilfe

Entwurfstechniken
Moin, jane,

es tauchen dauerd fehlermeldungen auf

so haben wir alle mal angefangen, da musst Du durch.

waere dankbar fuer ein bils hilfe

Wir wären dankbar für Angaben, wobei Du Hilfe benötigst.

Erzähl mal, wie Du vorgehst (Big Bang oder Eins nach dem Anderen), was überhaupt schon läuft, welche Fehlermeldungen unverständlich sind (ist bei VB eher selten), …

Gruß Ralf

Automatisiert Emails verschicken ist dank diverser Würmer eh nicht mehr so einfach.
Ich habe es mit Mapi und als ShellExecute Aufruf von Outlook ohne Erfolg versucht (wird geblockt).
Als Lösung hab ich das SMTP Protokoll mit Telnet nachgebaut (gibt es als Tutorial in irgend einem VB Archiv).
Da ich es aber nur intern gemacht hab, müsstest du, falls du einen externen Mailserver (gmx, gmail etc.) verwenden willst, ssh benutzen.
Aber ich nehme mal an, den Kryptostack davon nachzubauen, kannst du bei deinem jetzigen Kenntnisstand vergessen. :wink:

Aber so ein grober Plan für den Ablauf:

Dim appExcel As Excel.Application
Dim oWorkBook As Excel.Workbook

Set appExcel = CreateObject(„Excel.Application“)
appExcel.Visible = False
Set oWorkBook = appExcel.Workbooks.Open(„Datei mit Pfad“)

  • jetzt hast du ein geöffnetes Workbook in einem Excel Prozess

  • mit Schleife durch Worksheets laufen und Zellenwerte in Array speichern

Hallo Krampe,

Automatisiert Emails verschicken ist dank diverser Würmer eh
nicht mehr so einfach.

was soll das bedeuten? Ein Adressat kriegt doch gar nicht mit ob ich die Email manuell erstellt/abgeschickt habe oder per Excel-Vba.

Ich habe es mit Mapi und als ShellExecute Aufruf von Outlook
ohne Erfolg versucht (wird geblockt).

Das wird wohl an deinen Sicherheitseinstellungen/Firewalls o.ä. liegen.

Als Lösung hab ich das SMTP Protokoll mit Telnet nachgebaut
(gibt es als Tutorial in irgend einem VB Archiv).

Was soll der Anfrager mit dieser Info anfangen?

Da ich es aber nur intern gemacht hab, müsstest du, falls du
einen externen Mailserver (gmx, gmail etc.) verwenden willst,
ssh benutzen.

Aha ssh, was es nicht alles gibt, naja ich muß ja nicht alles kennen :smile:

Aber ich nehme mal an, den Kryptostack davon nachzubauen,
kannst du bei deinem jetzigen Kenntnisstand vergessen. :wink:

Ich weiß was ein Stack ist, ein Kryptostack ist wohl ein verschlüsselter Stack *rat*

  • mit Schleife durch Worksheets laufen und Zellenwerte in
    Array speichern

Ich weiß nicht ob der Anfrager dies tun kann, aber angenommen doch, was macht er denn dann mit dem Array?

@Anfrager, durchsuche mal das Archiv von hier und das von Tabellenkalkulation nach dem Wort „Outlook“ bzw. „Email“.
Code wie man per Excel über Outlook Emails verschickt ist da schon häufig erwähnt.

Gruß
Reinhard

Hallo Reinhardt

was soll das bedeuten? Ein Adressat kriegt doch gar nicht mit
ob ich die Email manuell erstellt/abgeschickt habe oder per
Excel-Vba.

Hat nichts mit dem Adressaten zu tun sondern mit deinem System.
Outlook verhindert automatisierten Email Versand ohne manuelle Bestätigung.

Das wird wohl an deinen Sicherheitseinstellungen/Firewalls
o.ä. liegen.

Nein, s.o.

Was soll der Anfrager mit dieser Info anfangen?

googlen

Aha ssh, was es nicht alles gibt, naja ich muß ja nicht alles
kennen :smile:

Steht für Secure Shell um verschlüsselte Netzwerkverbindung mit entfernten Rechnern aufzubauen.

Ich weiß was ein Stack ist, ein Kryptostack ist wohl ein
verschlüsselter Stack *rat*

*Ding*

Ich weiß nicht ob der Anfrager dies tun kann, aber angenommen
doch, was macht er denn dann mit dem Array?

Da er höchstwahrscheinlich am Email-Versand scheitern wird hat er wenigstens ein Erfolgserlebenis und einen Teil seines Vorhabens erfüllt.

Hallo Krampe,

was soll das bedeuten? Ein Adressat kriegt doch gar nicht mit
ob ich die Email manuell erstellt/abgeschickt habe oder per
Excel-Vba.

Hat nichts mit dem Adressaten zu tun sondern mit deinem
System.
Outlook verhindert automatisierten Email Versand ohne manuelle
Bestätigung.

nein. Zumindest meiner nicht, WinXP, Office2000.

da kann ich problemlos eine Emailliste „abarbeiten“ und jedem da eine Mail schicken.

Was soll der Anfrager mit dieser Info anfangen?

googlen

Sicher, wer suchet der findet, aber wenn man nicht weiß was man suchen soll wirds kritisch.

Aha ssh, was es nicht alles gibt, naja ich muß ja nicht alles
kennen :smile:

Steht für Secure Shell um verschlüsselte Netzwerkverbindung
mit entfernten Rechnern aufzubauen.

Danke für die Info.

Ich weiß was ein Stack ist, ein Kryptostack ist wohl ein
verschlüsselter Stack *rat*

*Ding*

?

Ich weiß nicht ob der Anfrager dies tun kann, aber angenommen
doch, was macht er denn dann mit dem Array?

Da er höchstwahrscheinlich am Email-Versand scheitern wird hat
er wenigstens ein Erfolgserlebenis und einen Teil seines
Vorhabens erfüllt.

Okay, er schaufelt die Adressen in ein Array aber wenn deine These(Excel ist nicht Chef über Outlook) stimmen würde nützt ihm das doch gar nix mit dem einen Teil des Vorhabens.

Gruß
Reinhard

Hallo Reinhardt,

was soll das bedeuten? Ein Adressat kriegt doch gar nicht mit
ob ich die Email manuell erstellt/abgeschickt habe oder per
Excel-Vba.

Hat nichts mit dem Adressaten zu tun sondern mit deinem
System.
Outlook verhindert automatisierten Email Versand ohne manuelle
Bestätigung.

nein. Zumindest meiner nicht, WinXP, Office2000.

da kann ich problemlos eine Emailliste „abarbeiten“ und jedem
da eine Mail schicken.

XP und Excel2002
Mag daran liegen das ich Outlook aus VB mit einem Shell Execute mailto… aufgerufen habe.
Wenn man diese interne Serienbrief Funktion nutzt könnte es funktionieren, aber wenn er das gewollt hätte würde doch, Makro Aufzeichnung starten, Serienbrief erstellen, Makro Aufzeichnung beenden, reichen oder? Da bin ich mir nicht sicher.

Was soll der Anfrager mit dieser Info anfangen?

googlen

Sicher, wer suchet der findet, aber wenn man nicht weiß was
man suchen soll wirds kritisch.

Deswegen habe ich ihm auch Mapi und Telnet vorgeschlagen.
Diese Seite hätte er z.B. finden können:
http://www.activevb.de/tipps/vb6tipps/tipp0051.html

Ich weiß was ein Stack ist, ein Kryptostack ist wohl ein
verschlüsselter Stack *rat*

*Ding*

?

erraten

Ich weiß nicht ob der Anfrager dies tun kann, aber angenommen
doch, was macht er denn dann mit dem Array?

Da er höchstwahrscheinlich am Email-Versand scheitern wird hat
er wenigstens ein Erfolgserlebenis und einen Teil seines
Vorhabens erfüllt.

Okay, er schaufelt die Adressen in ein Array aber wenn deine
These(Excel ist nicht Chef über Outlook) stimmen würde nützt
ihm das doch gar nix mit dem einen Teil des Vorhabens.

Doch er lernt definitv etwas (Schleifen, Handling von Workbook Objekten und Verwendung von Arrays). Wie weit er ist, war leider aus seinen knappen Ausführungen nicht ersichtlich.
Ich versuche ihm nur Tips zu geben und nicht seine Aufgabe für ihn zu lösen.
Vielleicht bin ich etwas übers Ziel hinaus geschossen, aber ich habe ihm Möglichkeiten genannt über die er sich informieren kann.
Und es wird jetzt doch recht arg offtopic

MfG Dominik

Hallo Dominik,

Und es wird jetzt doch recht arg offtopic

das ist sehr wahr.
Ich glaube auch wir haben uns genug ähem ausgetauscht :smile:
Also wünsche ich dir ein guts Nächtle.

Gruß
Reinhard

Hallo janec.

Bezüglich der E-Mail kann ich dir folgende Seite empfehlen. Ich habe es geschafft, mit dieser Seite automatisch E-Mails zu verschicken. Vorraussetzung sind Benuzername und Kennwort mit der du dich bei deinem Provider angemeldet hast. Bei Fragen, könnte ich dir meinen Code auch schicken.

http://www.rondebruin.nl/cdo.htm

Grüße.