Problem mit dem Ablegen von Emails
Hallo zusammen,
ich habe ein Makro geschrieben, dass eine grosse Exceltabelle in mehrere kleinere Dateien "zerstückelt". Die neuen Kleinen Dateien sollten dann von Excel aus an eine Email angehängt werden und unter Entwürfe gespeichert werden. Zum Zerstückeln der grossen Datei wird immer eine Schleife durchlaufen an deren Ende untenstehendes Makro gestartet wird.
Das Makro funktioniert an sich wie es soll. Leider wird immer nur die erste kleine Datei unter Entwürfe abgespeichert. Alle nach folgenden Dateien landen im Posteingang. Wäre super, wenn mir da jemand helfen könnte!
Vielen Dank im Vorraus.
Gruss
Uller
Sub Email_anlegen()
Dim Nachricht As Object, OutApp As Object
Set OutApp = CreateObject("Outlook.Application")
Dim AWS As String
AWS = Workbooks(dateineu).FullName
InitializeOutlook = True
Dim myNameSpace As Outlook.Application.Namespace
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = "" & Verteiler & ""
.Subject = "Testmeldung von Excel2000 " & Date & Time
.attachments.Add AWS
.Body = "Das ist ein Test." & vbCrLf & "Bitte ignorieren."
.Save
End With
OutApp.Quit
End Sub
ich habe ein Makro geschrieben, dass eine grosse Exceltabelle in mehrere kleinere Dateien "zerstückelt". Die neuen Kleinen Dateien sollten dann von Excel aus an eine Email angehängt werden und unter Entwürfe gespeichert werden. Zum Zerstückeln der grossen Datei wird immer eine Schleife durchlaufen an deren Ende untenstehendes Makro gestartet wird.
Das Makro funktioniert an sich wie es soll. Leider wird immer nur die erste kleine Datei unter Entwürfe abgespeichert. Alle nach folgenden Dateien landen im Posteingang. Wäre super, wenn mir da jemand helfen könnte!
Vielen Dank im Vorraus.
Gruss
Uller
Sub Email_anlegen()
Dim Nachricht As Object, OutApp As Object
Set OutApp = CreateObject("Outlook.Application")
Dim AWS As String
AWS = Workbooks(dateineu).FullName
InitializeOutlook = True
Dim myNameSpace As Outlook.Application.Namespace
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = "" & Verteiler & ""
.Subject = "Testmeldung von Excel2000 " & Date & Time
.attachments.Add AWS
.Body = "Das ist ein Test." & vbCrLf & "Bitte ignorieren."
.Save
End With
OutApp.Quit
End Sub
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-Key: 22201
Url: https://administrator.de/contentid/22201
Ausgedruckt am: 28.03.2024 um 21:03 Uhr
5 Kommentare
Neuester Kommentar
Wäre vielleicht auch interessant zu wissen, wenn Du die ganzen beteiligten Makros schreiben würdest. Nur so kann ich den Fehler reproduzieren.
Sowohl Outlook, als auch Excel...
Wenn die Daten zu sensibel sind, PN me.
(man beachte Mod-Status im Bereich Excel )
Lonesome Walker
Sowohl Outlook, als auch Excel...
Wenn die Daten zu sensibel sind, PN me.
(man beachte Mod-Status im Bereich Excel )
Lonesome Walker
Moin Uller,
kann mich Alexander nur anschließen - ist ein bisschen schwierig mit einem so kleinen Teil-Ausschnitt den Fehler zu reproduzieren. Das Problem kann durchaus im "aufrufenden Kontext" liegen.
Die gute Nachricht: Dein Schnipselchen würde so laufen und auch nacheineinder alle Exceldateien als Mail-Attachments in "Entwürfe" ablegen, das klappt bei einer Simulation.
Die schlechte Nachricht:
Bei mir lässt sich der Makro überhaupt erst anstoßen, wenn wenigstens ein "Formalitäten" geradegezogen wurden.
~~~
Sub Email_anlegen()
<s>'Dim Nachricht As Object, OutApp As Object </s>
Dim Nachricht As MailItem, OutApp As Outlook.Application
Set OutApp = CreateObject("Outlook.Application")
Dim AWS As String
<s>'Dim myNameSpace As Outlook.Application.Namespace</s>
Dim myNameSpace As NameSpace ' BTW ...wozu eigentlich?
'Wo machst Du denn etwas mit "myNameSpace" bzw. "deiNameSpace" ???
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = "" & Verteiler & ""
...
.Save
End With
' OutApp.Quit -----------??? Warum Quit? Weißt Du denn, dass Outlook vorher nicht schon gestartet war??
Set OutApp = Nothing
' set ....otherObjects to Nothing, too...
End Sub
~~~~
Evtl. lag/liegt das Problem bei Dir natürlich auch an der zu allgemeinen Typdeklaration als "Object" - ich bekomme es jedenfalls gar nicht kompiliert so wie oben.
HTH Biber
P.S.
@Alexander Hu
Wo denn bitte sollte im Outlook etwas nötig sein??? *fragend guckt*
kann mich Alexander nur anschließen - ist ein bisschen schwierig mit einem so kleinen Teil-Ausschnitt den Fehler zu reproduzieren. Das Problem kann durchaus im "aufrufenden Kontext" liegen.
Die gute Nachricht: Dein Schnipselchen würde so laufen und auch nacheineinder alle Exceldateien als Mail-Attachments in "Entwürfe" ablegen, das klappt bei einer Simulation.
Die schlechte Nachricht:
Bei mir lässt sich der Makro überhaupt erst anstoßen, wenn wenigstens ein "Formalitäten" geradegezogen wurden.
~~~
Sub Email_anlegen()
<s>'Dim Nachricht As Object, OutApp As Object </s>
Dim Nachricht As MailItem, OutApp As Outlook.Application
Set OutApp = CreateObject("Outlook.Application")
Dim AWS As String
<s>'Dim myNameSpace As Outlook.Application.Namespace</s>
Dim myNameSpace As NameSpace ' BTW ...wozu eigentlich?
'Wo machst Du denn etwas mit "myNameSpace" bzw. "deiNameSpace" ???
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = "" & Verteiler & ""
...
.Save
End With
' OutApp.Quit -----------??? Warum Quit? Weißt Du denn, dass Outlook vorher nicht schon gestartet war??
Set OutApp = Nothing
' set ....otherObjects to Nothing, too...
End Sub
~~~~
Evtl. lag/liegt das Problem bei Dir natürlich auch an der zu allgemeinen Typdeklaration als "Object" - ich bekomme es jedenfalls gar nicht kompiliert so wie oben.
HTH Biber
P.S.
@Alexander Hu
Sowohl Outlook, als auch Excel...
Gibt ja Leutelz wie mich, die auch Outlook-Makros am Laufen haben...
(soll das Leben sehr angenehm machen )
LSW
(soll das Leben sehr angenehm machen )
LSW