Suche Makro zum Versenden von Emails via Lotus Notes

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

philantropisch
Beiträge: 3
Registriert: Mo, 09.11.2009 13:57

Suche Makro zum Versenden von Emails via Lotus Notes

Beitrag von philantropisch »

Hallo zusammen,

ich habe folgendes Problem:
Ich möchte gerne mit einem Makro aus einem Spreadsheet heraus eine Mail über Lotus Notes schicken.

Zu den Rahmenbedingungen:
- ich nutze Lotus Symphonie 1.3 (das Basic is soweit ich das beurteilen kann das selbe wie unter OO)
- ich hab Lotus Notes 8.0.2 drauf
- OS: das makro sollte unter WinXP sowie auch unter Linux laufen
- die Daten für die Mail (Empfänger, Betreff, Body sind in String variablen gespeichert)

ich habe bereits die Variante von http://www.oooforum.org/forum/viewtopic ... otes+macro ausprobiert, funzt auch ganz gut, nur leider is da kein Body möglich. Der is aber unerlässlich für mich.


Ich wäre sehr dankbar für Hilfe und/oder schon fertige Makros

Und für die die immer gerne erstma "Use your google" schrein... ich such seid ner woche in dem verf**** google aber des bringt mir immer nur VBA zeug das mir nich weiterhilft...

Von daher an alle die meinen sie könnten mir hier weiterhelfen danke :)

Ach ja und an die admins: falls es nen thread zu dem thema schon gibt (und da steht was drin was mir hilft) dann dürft ihr den hier gerne sperren und mich weiterlinken ^^)
mumpel
****
Beiträge: 133
Registriert: So, 22.08.2004 05:27
Wohnort: Lindau (B)
Kontaktdaten:

Re: Suche Makro zum Versenden von Emails via Lotus Notes

Beitrag von mumpel »

Halllo!

Versuch mal das folgende Makro. Stammt zwar aus VBA, sollte aber problemlos auch on OOo laufen. Die Outlook-Variante funktioniert ja auch.

Option VBASupport 1

Sub SendNotesMail()
Application.DisplayAlerts = False
Dim Maildb As Object
Dim MailDbName As String
Dim MailDoc As Object
Dim session As Object
Dim Recipient As String
Dim e As String
Dim f As String
Dim EmbedObj As Object
Dim AttachME As Object
Rem ActiveWorkbook.Save
Rem AWS = ActiveWorkbook.FullName
Set session = CreateObject("Notes.NotesSession")
Set Maildb = session.CURRENTDATABASE
Rem On Error Resume Next
Set MailDoc = Maildb.CREATEDOCUMENT
MailDoc.Form = "Memo"
Recipient = "meine.email@adresse.ch"
MailDoc.sendto = Recipient
MailDoc.CopyTo = ""
MailDoc.Subject = "Mail aus Excel"
MailDoc.SAVEMESSAGEONSEND = True
Rem Pfad zur zu versendenden Datei
Rem Set AttachME = MailDoc.CREATERICHTEXTITEM(ActiveWorkbook.Path & AWS)
Rem Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", ActiveWorkbook.Path & AWS)
MailDoc.PostedDate = Now()
MailDoc.SEND 0, Recipient
Set Maildb = Nothing
Set MailDoc = Nothing
Set AttachME = Nothing
Set session = Nothing
Rem Set EmbedObj = Nothing
Rem Application.DisplayAlerts = True
Rem MsgBox "Mail versandt!" 'optional
End Sub

Code eingefügt mit VBA in HTML 2.0

Gruß, René

Windows 7 Home Premium (auf Acer Desktop PC)
Windows 8 Professional (auf Microsoft Surface Pro 3).
MSO 365 Home Premium
LibreOffice 4.2.
F-Secure Internet Security
philantropisch
Beiträge: 3
Registriert: Mo, 09.11.2009 13:57

Re: Suche Makro zum Versenden von Emails via Lotus Notes

Beitrag von philantropisch »

Hi danke für die schnelle Antwort.

leider haut des so net hin. wenn ich deinen code einfach bei mir rein kopier meckert er gleich am anfang rum. speziell gefällt ihm die zeile

Code: Alles auswählen

Set session = CreateObject("Notes.NotesSession")
net

ich hab n bischen rum probiert (leider bin ich in sachen basic ein noob) und hab die session mit

Code: Alles auswählen

Dim oleService As Object
oleService = createUnoService("com.sun.star.bridge.OleObjectFactory")
set session = oleService.createInstance("Notes.NotesSession")
gesetzt
(wahrscheinlich lacht ihr euch jetzt schlapp) aber da bringt er mir nen OLE fehler beim send.

Brauch ich den OLE überhaupt???

ich hoff ihr könnt mir noch weiterhelfen.

Gruß, der Phil
mumpel
****
Beiträge: 133
Registriert: So, 22.08.2004 05:27
Wohnort: Lindau (B)
Kontaktdaten:

Re: Suche Makro zum Versenden von Emails via Lotus Notes

Beitrag von mumpel »

Weshalb die Fehlermeldung auftritt weiss ich nicht. Bei mir wird die Mail (Outlook) trotz Fehlermeldung korrekt erzeugt. Übernimm das Makro 1:1 ohne Änderungen. Lediglich das REM in der Zeile Rem On Error Resume Next entfernen bzw. eine entsprechenden Fehlerblock einbauen. Hast Du überhaupt die passende Lotus-Version? Testen kann ich nicht da ich kein Lotus habe. Und hast Du auch die Zeile Option VBASupport 1 gesetzt wie in meinem Beispielmakro?

Windows 7 Home Premium (auf Acer Desktop PC)
Windows 8 Professional (auf Microsoft Surface Pro 3).
MSO 365 Home Premium
LibreOffice 4.2.
F-Secure Internet Security
mumpel
****
Beiträge: 133
Registriert: So, 22.08.2004 05:27
Wohnort: Lindau (B)
Kontaktdaten:

Re: Suche Makro zum Versenden von Emails via Lotus Notes

Beitrag von mumpel »

Hier mal der Code (für Outlook) wie er in VBA und in Starbasic funktioniert. Vielleicht kannst Du Dich daran orientieren.

Sub Mailtest()
Dim oApp As Object
Dim oMailItem As Object
On Error Resume Next
Set oApp = CreateObject("Outlook.Application")
Set oMailItem = oApp.CreateItem(0)
oMailItem.to = "test@test.de"
oMailItem.Subject = "test"
oMailItem.htmlbody = "test"
oMailItem.display
Rem oMailItem.send
End Sub

Code eingefügt mit VBA in HTML 2.0

Windows 7 Home Premium (auf Acer Desktop PC)
Windows 8 Professional (auf Microsoft Surface Pro 3).
MSO 365 Home Premium
LibreOffice 4.2.
F-Secure Internet Security
philantropisch
Beiträge: 3
Registriert: Mo, 09.11.2009 13:57

Re: Suche Makro zum Versenden von Emails via Lotus Notes

Beitrag von philantropisch »

Danke für die Antwort, leider hat das auch nichts gebracht.
Ich habe fast die Befürchtung, dass ich gar nicht auf die Klassen, Module, etc von notes zugreifen kann.

Kann mir da vielleicht einer weiterhelfen?
Antworten