Automatisierter Email Versand xls vba
09.08.2008 11:00:00
Christian
ich habe ein größeres Problem bezüglich des Versands von Woksheets als email Anhang und bräuchte dringend Hilfe.
Die Situation ist folgende:
Ich hab in verschiedenen Verzeichnissen(Ordnern) Excel WB (=Berichte/Reports) erzeugt, die jeweils nur aus einem Sheet bestehen welches den gleichen Namen trägt wie das WB selbst!
Es gibt vier verschieden Ordner in denen die Dateien abgelegt werden.
Also in Y:\Reports\FR Reports liegt z.B. ein MAS_FR.xls, dass ein Sheet namens MAS_FR beinhaltet.
Nun habe ich eine Tabelle in einem neuen Workbook erstellt die regeln soll, welcher Benutzer welche Workbooks - bzw. eigentlich welche Worksheets, als email Anhang empfangen soll.
Die Tabelle besteht aus der Spalte A in der die Namen der Sheets (z.B. MAS_FR) gelistet sind und aus zwei Zeilen.
Zeile 1 beinhaltet den Namen des Empfängers / Zeile 2 die Email Adresse des Empfängers.
Wenn ein Empfänger den Report erhalten soll, steht in der entsprechenden Zelle die aus Spaltenangabe A (für den Bericht) und Zeileangabe 2 (Welche Email) besteht eine 1 - ansonsten bleibt die Zelle leer;
..also wenn Zellwert = 1 dann erhält er den Bericht , Wenn Zellwert = leer dann nicht!
Klasse wäre es jetzt allerdings nicht alle Berichte als einzelne .xls Dateien anhängen zu können - sondern vor dem Versand ein WB zu generieren dass alle Berichte (für den jeweiligen Empfänger) in jeweils ein WB mit seinem Namen (Laut Zeile1) kopiert und danach dieses konsolidierte WB als Anhang an die EmpfängerAdresse sendet....
Das ganze sollte geplanterweise als Schleife ablaufen nach dem Motto, gehe Spalte B durch....(Start Zeile 3 bis 400) - für jede Zelle in B in der eine "1" steht gehe zum Sheet in gleichnamiger Datei (Name steht in Spalte A der gleichen Zeile) und kopiere dieses Sheet in ein neues WB mit dem Namen der in B1 (=Empfängernamen) steht und sende dieses WB per Mail an die Email-Adresse in B2....
Umfang ca. 300 Sheets in Spalte A (entspricht 300 .xls _Dateien und ca. 30 Empfänger....
Weiss es nicht genau - aber am Schlauesten wäre es wahrscheinlich zunächst innerhalb der Schleife ein neues WB generieren zu lassen und dann die nachfolgenden Schritte abzuarbeiten?!!
Das übersteigt leider meine VBA Kenntnisse bei weitem obgleich ich sicher bin, dass es für einen Experten ohne größere Probleme machbar sein solllte?!
Vielen Dank schon mal vorab für alle Tipps und Hilfen?! Ihr würdet mir sehr helfen meine Arbeit zu vereinfachen! Natürlich ist es dringend..;-)
Gruß Christian