Hallo,
ich habe eine Anwendung von VBA (lief unter Excel 2000) nach VB 2005portiert. Teil dieser Anwendung war die Generierung einer Mail in Outlook 2000 aus einem Formular mit automatischer Versendung der Mail.
[highlight=vbnet]
Sub EmailSenden(ByVal text As String, ByVal Anhang As String)
'Aus dem Formular Generierte E-Mail wird versendet.
Dim olApp As Object
Dim olNameSpace As Object
Dim objMailItem As Object
Dim objFolder As Object
olApp = CreateObject("Outlook.Application")
olNameSpace = olApp.GetNamespace("MAPI")
objFolder = olNameSpace.GetDefaultFolder(4) '4 = olFolderOutbox
objMailItem = objFolder.Items.Add() '0 = olMailItem
With objMailItem
.to = "[email protected]"
.Subject = "Hierstehtwas " + CStr(Me.TextBox.text)
If irgendwas = True Then .Attachments.Add(Anhang)
.body = "Dies ist nur ein Beispiel"
.display()
End With
olApp.ActiveWindow()
SendKeys.SendWait("%s")
End Sub
[/highlight]
Ich muß die Mail mittels sendkeys versenden, da sonst stöhrende Sicherheitsabfragen erscheinen. Unter VB6 gab es hiermit keine Probleme. Unter VB2005 wird die Mail häufig nicht versendet, sondern nur am Bildschirm angezeigt.
Hab schon versucht vor dem .display() den GC auszuführen, leider brachte dies nicht den gewünschten Erfolg.
Vielleicht weiß jemand von Euch rat.
Viele Grüße
MikeIO
ich habe eine Anwendung von VBA (lief unter Excel 2000) nach VB 2005portiert. Teil dieser Anwendung war die Generierung einer Mail in Outlook 2000 aus einem Formular mit automatischer Versendung der Mail.
[highlight=vbnet]
Sub EmailSenden(ByVal text As String, ByVal Anhang As String)
'Aus dem Formular Generierte E-Mail wird versendet.
Dim olApp As Object
Dim olNameSpace As Object
Dim objMailItem As Object
Dim objFolder As Object
olApp = CreateObject("Outlook.Application")
olNameSpace = olApp.GetNamespace("MAPI")
objFolder = olNameSpace.GetDefaultFolder(4) '4 = olFolderOutbox
objMailItem = objFolder.Items.Add() '0 = olMailItem
With objMailItem
.to = "[email protected]"
.Subject = "Hierstehtwas " + CStr(Me.TextBox.text)
If irgendwas = True Then .Attachments.Add(Anhang)
.body = "Dies ist nur ein Beispiel"
.display()
End With
olApp.ActiveWindow()
SendKeys.SendWait("%s")
End Sub
[/highlight]
Ich muß die Mail mittels sendkeys versenden, da sonst stöhrende Sicherheitsabfragen erscheinen. Unter VB6 gab es hiermit keine Probleme. Unter VB2005 wird die Mail häufig nicht versendet, sondern nur am Bildschirm angezeigt.
Hab schon versucht vor dem .display() den GC auszuführen, leider brachte dies nicht den gewünschten Erfolg.
Vielleicht weiß jemand von Euch rat.
Viele Grüße
MikeIO
Comment