Domino 9 und frühere Versionen > ND9: Administration & Userprobleme
Mail via Excel verschicken
Fabidi:
Hallo Leute,
ich habe ein Problem dabei, die Mail bearbeiten zu können.
Wenn ich das Makro ausführe, dann öffnet sich auch wie gewollt Lotus Notes, allerdings beinhaltet es nur den Email-Adressen sowie den Betreff. Wohin ist der Bodytext verschwunden?? Denn wenn ich das Makro so abändere, dass die Email automatisch abgeschickt wird, dann ist die Mail inkl. Inhalt.
Bitte um Hilfe!!
Beiliegend ist mein Code.
Sub SendNotesMail2()
Dim UserName As String
Dim MailDbName As String
Dim Recipient As Variant
Dim Maildb As Object
Dim MailDoc As Object
Dim session As Object
Dim stSignature As String
With Application
.ScreenUpdating = False
.DisplayAlerts = False
AWS = ActiveWorkbook.FullName
Set Worksheet = Application.ActiveWorkbook.Worksheets.Item(1)
Set session = CreateObject("Notes.NotesSession")
Set Maildb = session.CURRENTDATABASE
Set MailDoc = Maildb.createdocument
MailDoc.Form = "Memo"
Set Workspace = CreateObject("Notes.NOTESUIWORKSPACE")
stSignature = Maildb.GetProfileDocument("CalendarProfile").GetItemValue("Signature")(0)
Recipient = "Testgruppe"
MailDoc.display = "Testgruppe"
MailDoc.sendto = "Testgruppe"
MailDoc.copyto = ""
MailDoc.subject = "prices"
MailDoc.SAVEMESSAGEONSEND = saveit
Set ritem = MailDoc.CREATERICHTEXTITEM("Body")
For i = 2 To 2
With ritem
.appendtext ("Please find below the updated prices:")
.addnewline (3)
End With
Next
For i = 2 To 37
With ritem
.appendtext ("")
.appendtext (Cells(i, 2).Value & vbTab & Cells(i, 3).Value & vbTab & Cells(i, 4).Value & vbTab & Cells(i, 5).Value & vbTab)
.addnewline (1)
End With
Next
For i = 2 To 2
With ritem
.appendtext ("" & vbCrLf & vbCrLf & stSignature)
End With
Next
Danke!!!
Bastel123:
Ein bischen Suche im Forum führt einen zu diesem Tread:
http://atnotes.de/index.php/topic,59825.80.html
Da wurde alles durchgekaut.
Sebastian
Tode:
Also erstmal fehlt natürlich in Deinem Beispielcode die Stelle, wo Du das Ganze zum bearbeiten öffnest, das macht es etwas schwieriger, das zu analysieren.
Ausserdem wäre es schön, wenn Du code auch in CODE- Tags einfasst, das macht das Ganze wesentlich besser lesbar.
Nun aber zum Problem: Richtext- operationen werden gecached, und erst "tatsächlich" ins Dokument geschrieben, wenn man entweder das Dokument speichert, oder aber das Richtext- Item updated.
Probiere mal ganz am Ende, nach der Schleife die Zeile:
--- Code: ---rtitem.Update
--- Ende Code ---
, das sollte schon reichen. Wenn nicht, dann füge noch ein
--- Code: ---rtitem.Compact
--- Ende Code ---
ein, das sollte auf jeden Fall reichen.
Fabidi:
Hallo Tode :D
Erst mal danke für den simplen aber sehr erfolgreichen Tipp. Hat super funktioniert.
Allerdings steht jetzt meine Signatur (so wie es sein soll) ganz am Ende, aber auch ganz am Anfang der Mail. Der generierte Inhalt wird also erst unterhalb der Signatur eingefügt.
Vielleicht hast du ja noch eine Idee wie ich die Signatur oberhalb ausblenden lassen kann oder so ähnlich?
Vielen Dank im Voraus!
Tode:
Das Problem ist: Du fügst die Signatur manuell im Code ein, aber in dem Moment, wo Du das Dokument zum Bearbeiten ins Frontend bringst, wird durch die Option "Signatur automatisch hinzufügen" die Signatur nochmal automatisch hinzugefügt.
Das zu verhindern ist nicht trivial, und es gibt verschiedene Ansätze, das zu tun. Die hier alle darzulegen / durchzuprobieren geht aber ins Consulting... und damit verdiene ich mein Geld.
Sorry, da musst Du selbst recherchieren, möglicherweise reicht es, im Kalenderprofil temporär die Option für das automatische einfügen der Signatur zu deaktivieren:
--- Code: ---Set docProfile = Maildb.GetProfileDocument( "CalendarProfile" )
Call docProfile.ReplaceItemValue( "FeldFürAutomatischeSignatur", "" )
Call docProfile.Save( True, True, True)
--- Ende Code ---
Nicht vergessen, den Status zu merken, und nachher wieder zurückzusetzen...
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln