Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
628to632
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
628to632
628to632
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA-Hilfe zu Excel/Outlook

VBA-Hilfe zu Excel/Outlook
28.06.2005 16:01:50
MRP
Hallo zusammen,
habe aus
http://www.office.gmxhome.de/_excel_outlook.htm#EXCEL%20Tabelle%20mit%20Outlook%20senden
folgenden Code:

Sub Excel_Sheet_via_Outlook_Senden()
Dim Nachricht As Object, OutApp As Object
Dim SavePath As String
Dim AWS As String
SavePath = "E:\Eigene Dateien"
Set OutApp = CreateObject("Outlook.Application")
'Kopiert aktuelles Sheet in eine neue Mappe
'welche nur diese Tabelle enthält
ActiveSheet.Copy
'Speichert die Datei unter dem Tabellennamen und dem Namen in A1
ActiveWorkbook.SaveAs SavePath & "\" & ActiveSheet.Name & " " & ActiveSheet.Range("A1")
'Aktive Arbeitsmappe wird als mail gesendet
AWS = ActiveWorkbook.FullName
'InitializeOutlook = True
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = "irgendwer@Irgenwo.de"
.Subject = "Testmeldung von Excel2000 " & Date & Time
.Attachments.Add AWS
'Hier wird eine normale Text Mail erstellt
'.body = "Das ist ein Test" & vbCrLf & "Bitte ignorieren"
'Hier wird die HTML Mail erstellt
.HTMLBody = "Das ist ein Test." & vbCrLf & "Bitte ignorieren."
'Hier wird die Mail nochmals angezeigt
.Display
'Hier wird die Mail gleich in den Postausgang gelegt
'Mail.Send
'Hier könnte die Datei wieder gelöscht werden
'Kill AWS
End With
OutApp.Quit
Set OutApp = Nothing
Set Nachricht = Nothing
End Sub

Jetzt mein Problem, ich möchte gerne die Codezeile .To = "irgendwer@Irgenwo.de" ersetzen durch den Inhalt aus A1 der aktiven Arbeitsmappe. Ich dachte das geht wie weiter oben im Code durch ActiveSheet.Range("A1"). Ich kriege aber immer nen Syntaxfehler :-( Habe schon probiert das Ganze irgendwie zu verketten ( sorry, meine VBA-Kenntnisse belaufen sich nur aufs Aufzeichnen mit dem Makrorecorder ) mit &, aber ich kriegs nicht hin. Ausserdem schliesst sich mein Outlook immer nach dem Makrolauf, hmm?!
Könnte mir bitte mal jemand auf die Sprünge helfen?
Danke im vorraus
Manuele Rocco Parrino

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA-Hilfe zu Excel/Outlook
28.06.2005 16:07:17
EffHa
.To = cells(1,1)
AW: wow, das ging aber fix........aber...?
28.06.2005 16:23:04
MRP
herzlichen Dank!!
Jetzt müsste nur mein Outlook offen bleiben, und die Mail auch wirklich gesendet werden :-(
Es erscheint die Meldung, möchten sie die Änderung speichern, klicke ich auf ja, schliesst sich mein Outlook. Beim erneuten öffnen habe ich keine Mail erhalten ( ich teste mit meiner eigenen Mailadresse ) und im Ordner entwürfe befindet sich eine Mail mit korrekter Adresse ( JUHUU!!! Dank dir ) aber der Anhang ist eine .txt - Datei mit folgendem Inhalt:
06/28/2005 16:12:41 Original attachment ( manuel.parrino@**.**) was Deleted. The original attachment was blocked from delivery due to current attachment blocking rules. You can safely save or delete this replacement attachment.
Weisst du da evtl. auch Rat ?
Danke
Manu
Anzeige
AW: wow, das ging aber fix........aber...?
28.06.2005 16:43:14
EffHa
tut mir leid, aber ich arbeite nicht mit outlook.
Es sollte aber im Ausgang landen, wenn man das "mail.send" aktiviert
OutApp.Quit = auskommentieren, dann wird outlook nicht geschlossen
AW: wow, das ging aber fix........aber...?
28.06.2005 16:59:24
MRP
Hallo,
hab jetzt ein wenig rumprobiert, dass Problem ist, dass er die neu kreierte Datei schon nicht als Excelfile ablegt, sondern diese komische txt draus macht im Ordner Eigene Dateien. Danke für die Sache mit dem auskommentieren, das mit dem mail.send klappt aber leider nicht.
Ciao, vielen Dank für deine Mühen
Manu
AW: wow, das ging aber fix........aber...?
28.06.2005 23:37:25
Ramses
Hallo Manu
Sorry, das ist ein kleiner Lapsus in meinem Code :-(
Die Datei-Extension wird nicht vergeben.
Es muss korrekt heissen

Sub Excel_Sheet_via_Outlook_Senden()
Dim Nachricht As Object, OutApp As Object
Dim SavePath As String
Dim AWS As String
SavePath = "E:\Eigene Dateien"
Set OutApp = CreateObject("Outlook.Application")
'Kopiert aktuelles Sheet in eine neue Mappe
'welche nur diese Tabelle enthält
ActiveSheet.Copy
'Speichert die Datei unter dem Tabellennamen und dem Namen in A1
ActiveWorkbook.SaveAs SavePath & "\" & ActiveSheet.Name & " " & ActiveSheet.Range("A1") & ".xls"
'Aktive Arbeitsmappe wird als mail gesendet
AWS = ActiveWorkbook.FullName
'InitializeOutlook = True
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = Cells(1,1)   'oder ActiveCell.Text
.Subject = "Testmeldung von Excel2000 " & Date & Time
.Attachments.Add AWS
'Hier wird eine normale Text Mail erstellt
'.body = "Das ist ein Test" & vbCrLf & "Bitte ignorieren"
'Hier wird die HTML Mail erstellt
.HTMLBody = "Das ist ein Test." & vbCrLf & "Bitte ignorieren."
'Hier wird die Mail nochmals angezeigt
'.Display
'Hier wird die Mail gleich in den Postausgang gelegt
Mail.Send
'Hier könnte die Datei wieder gelöscht werden
Kill AWS
End With
OutApp.Quit
Set OutApp = Nothing
Set Nachricht = Nothing
End Sub
<pre/>
Gruss Rainer

Anzeige
Mille Grazie !!
29.06.2005 09:11:03
MRP
Hallo Rainer,
herzlichen Dank für deine Antwort. Gestern Abend auf der Terasse bei nem Glas Rotwein kam mir auch der Gedanke, dass es wohl damit zu tun hat, dass ich in A1 die Mailadresse eingebe. Dachte, dass unser Mailfilter wahrscheinlich doppelte Dateiextentionen nicht zulässt, und da der Dateiname dann mit .com endet, und danach noch ein .xls kommt dann die Textnachricht kommt, dass die Datei nicht versendet werden konnte.
Mit deiner Anpassung klappt es jetzt aber einwandfrei, nochmal herzlichsten dank!
Ciao, schönen Tag noch
Manu

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige