Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
292to296
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
292to296
292to296
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Automatische Email erstellen

Automatische Email erstellen
14.08.2003 10:06:21
Lotti
Guten Morgen excel-cracks!
Mein Problem heute ist ein wenig Excel und ein bisschen Lotus Notes!?
Ich möchte gerne eine Excel Datei aus Excel heraus mit Lotus-Notes versenden und auch gleich die Adressierung aus dem Adressbuch in VBA mitgeben.
Stand nach dem Makrolauf sollte sein das die Texteingabe geöffnet, die Datei angehängt und die Mail addressiert ist. Eventuell sogar bereits ein Kurztext durchs Makro mitgegeben werden kann.
Jaja, ich weiss, geich drei fast vier Wünsche auf einmal, aber vieleicht hat ja gerade jemand ein Überraschungsei parat?!
Nun denn, wenn das allzu abwegig und zu Excel-unspezifisch ist dann schon mal ein kurzes sorry von hier aus, aber ich dachte "FRAAACHMAL!"
Schönen Tag noch und geniesst den kühlen Tag!
GRUß LOTTI!

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Automatische Email erstellen
14.08.2003 10:17:50
AlexD
Hallo Lotti,
vielleicht hilft dir folgendes Überraschungsei?
Public

Function SendNotesMail(Subject As String, Attachment As String, Recipient As String, BodyText As String, SaveIt As Boolean)
Dim Maildb As Object 'Die Mail-Datenbank
Dim UserName As String 'Der Notes-Benutzername des SENDENDEN Users
Dim MailDbName As String 'Der Name der Maildatenbank des SENDENDEN Users
Dim MailDoc As Object 'Das Mail-Dokument selbst
Dim AttachME As Object 'Das Attachment-Richtextfile-Object
Dim Session As Object 'Die Notes-Session
Dim EmbedObj As Object 'Das Attachment
'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
UserName = Session.UserName
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
MailDoc.form = "Memo"
MailDoc.sendto = Recipient
MailDoc.Subject = Subject
MailDoc.Body = BodyText
MailDoc.SAVEMESSAGEONSEND = SaveIt
'Set up the embedded object and attachment and attach it
If Attachment <> "" Then
Set AttachME = MailDoc.CREATERICHTEXTITEM("Attachment")
Set EmbedObj = AttachME.EMBEDOBJECT(1454, "", Attachment, "Attachment")
MailDoc.CREATERICHTEXTITEM ("Attachment")
End If
'Send the document
MailDoc.PostedDate = Now() 'Gets the mail to appear in the sent items folder
MailDoc.SEND 0, Recipient
'Clean Up
Set Maildb = Nothing
Set MailDoc = Nothing
Set AttachME = Nothing
Set Session = Nothing
Set EmbedObj = Nothing
End Function

Der Aufruf erfolgt in folgender Form:
SendNotesMail("Betreff", "C:\MeinAnhang.xls", "Peter.Pan@Neverland.net", "Mailtext", True)
Gruß,
Alex.

Anzeige
AW: Automatische Email erstellen
14.08.2003 10:41:55
Lotti
Hallo AlexD,
(verwant mit ThomasD?)
Ging ja prompt! Nur Ich wollt jetzt mal Schrittweise durchlaufen lassen um mal zu sehen was da passiert und ob eventuell irgendwelche Variablen hier noch mitgegeben werden müssen, die ich selbst jetzt noch gar nich so richtig kenne.
Die Maildatenbank zb. weiss ich nich genau wie das Ding heisst weil da irgendwie ne ganze Menge zur Verfügung stehen.
Naja, und überhaupt, extremes Rudimentärwissen was die Lotuskiste betrifft.
Wenn du Zeit hast, ich bin ein gelehriger Schöööler!
(HIIIIIIIIIIILFEEEEE!)
Gruß
Lotti

AW: Automatische Email erstellen
14.08.2003 11:24:55
AlexD
Hallo Lotti,
könnte sein, dass ich mit ihm verwandt bin: der Mädchenname meiner Mutter ist der selbe wie sein Nachname, beide kommen aus der selben Gegend ;-) Mein Nachname lautet allerdings anders.
So, zu deinem Problem:
Die Funktion kopierst du einfach in ein (neues) Modul. Achtung: Das "Public" muß mit Leerzeichen getrennt vor dem "Function" stehen - ist beim reinkopieren was schiefgegangen.
Dann baust du dir eine neue "Sub" (oder eine Userform - wie auch immer du die Funktion aufrufen möchtest), z. B.

Sub rausdamit()
Dim dummy As Variant
dummy = SendNotesMail("Betreff", "C:\Anhang.xls", "Empfänger@Domain.de", "Mailtext", True)
End Sub

Um weitere Variablen als um die in der "rausdamit()" brauchst du dir keine Sorgen zu machen, das erledigt die Funktion. Die hier verwendeten Angaben sollten weitgehend selbsterklärend sein. Wenn du keinen Anhang mitsenden willst, dann ersetze diesen Wert durch "". Das "True" am Ende steuert, ob eine Kopie der Mail im Ordner "Gesendet"
abgelegt werden soll. Ist dies nicht erwünscht, so setze stattdessen ein "False".
Die Funktion versendet die Email automatisch mit der Absenderadresse desjenigen, der in Notes angemeldet ist (bzw. sich normalerweise anmeldet). Funktioniert auch, wenn gerade niemand angemeldet ist, dann ruft die Funktion Notes auf - das Notes-Passwort muß jedoch manuell eingegeben werden.
Lotus Notes gibt beim ersten mal eine Sicherheitsmeldung aus - klar, ein Programm, welches versucht über Notes Emails zu versenden könnte ja auch ein Virus sein.
Bestätige einfach, dass der Versand in diesem Fall ok geht und du hast Ruhe.
Probier's einfach mal aus und setze dich selbst als Empfänger ein.
Gruß,
Alex.

Anzeige
AW: Automatische Email erstellen
14.08.2003 12:01:00
Lotti
Hi Bruda D! ;-)
Jau, das klingt einleuchtend und könnte klappen.
Werde mich melden sobald ichs ausprobiert habe.
Vorab
Vielen Dank
und in diesem Sinne
WEITER RÜCKENWIND
Gruß
Lotti

AW: Automatische Email erstellen
14.08.2003 15:03:56
Lotti
Hallo Alex,
ich hab's probiert und mit kollegialer Hilfe von einem unserer sonst unfähigen EDV-Mitarbeiter(sitzt grad neben mir) hats tatsächlich geklappt, nachdem der mir erklärt hat was ich auch hätte wissen müssen: MITGABE DER PARAMETER!
Suuuper,
vielen Dank!!
Kollege wird das wahrscheinlich auch noch weiter nutzen!
GREAT!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige