ich möchte gerne ein Lotus-Notes-Mail über Excel-VBA generieren, senden und ausdrucken. Die Übergabe an Lotus und der Versand funktioniert sehr gut, ein entsprechendes Skript konnte ich im Internet finden. Allerdings finde ich nicht, wie diese versendete Mail automatisch ausgedruckt werden kann.
Der Ablauf ist wie folgt:
User gibt in Excel Daten ein.
Durch CommandButton startet Sub SendNotesMail mit den vorhandenen Argumenten
Mail wird automatisch erstellt, versendet und soll dann ausgedruckt werden.
Der User erhält eine Meldung über die Durchführung.
Eine einfache Lösung wie MailDoc.print funktioniert leider nicht (wär ja auch zu schön gewesen)
Hier der Programmteil:
Public Sub SendNotesMail(wn As String, preis As Long, bez As String) 'Set up the _
objects required for Automation into lotus notes
Dim Maildb As Object 'The mail database
Dim UserName As String 'The current users notes name
Dim MailDbName As String 'THe current users notes mail database name
Dim MailDoc As Object 'The mail document itself
Dim session As Variant 'The notes session
Dim Betreff As String
Dim Text1 As String
Dim text2 As String
Dim text3 As String
Dim text4 As String
Dim text5 As String
Dim text6 As String
Dim text7 As String
UserForm1.Show 'Auswahl des Empfängers, Abbruch liefert empfaenger = "Stop"
If empfaenger = "Stop" Then
MsgBox "Neuanlage wurde NICHT an MTBD-CRE mitgeteilt."
Exit Sub
End If
Betreff = "Neuanlage " & wn
Text1 = "Sehr geehrte Damen und Herren, " & vbCrLf & vbCrLf
text2 = "bitte anlegen:" & vbCrLf
text3 = " " & wn & vbCrLf
text4 = " " & bez & vbCrLf
text5 = " Preis: " & Format(preis, "##,##0.00" & " EUR") & vbCrLf
text6 = "anlegen." & vbCrLf & vbCrLf
text7 = Text1 & text2 & text3 & text4 & text5 & text6 & vbCrLf & "Mit freundlichen Grüßen"
'Start a session to notes
Set session = CreateObject("Notes.NotesSession")
'Get the sessions username and then calculate the mail file name
'You may or may not need this as for MailDBname with some systems you
'can pass an empty string
MailDbName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1, UserName, " "))) & _
_
_
".nsf"
'Open the mail database in notes
Set Maildb = session.GetDatabase("", MailDbName)
If Maildb.IsOpen = True Then
'Already open for mail
Else
Maildb.OPENMAIL
End If
'Set up the new mail document
Set MailDoc = Maildb.CREATEDOCUMENT '
Kennt jemand eine Lösung? Muß ich ein weiteres Object (z. B. NOTESUIDOCUMENT) öffnen? Wenn ja, wie finde ich dann das eben erstellt Memo-Dokument? ?
Vorab schon mal vielen Dank für Euer Interesse.
VG Frank