Willkommen
Gast
. Bitte
einloggen
oder
registrieren
.
24.05.13 - 21:36:57
News:
Schnellsuche:
Das Notes Forum
Lotus Notes / Domino Sonstiges
OLE/COM-Programmierung
(Moderator:
Glombi
)
Skript zum versenden von Mails aus Excel löst Rechtschreibprüfung aus
« vorheriges
nächstes »
Seiten:
[
1
]
Autor
Thema: Skript zum versenden von Mails aus Excel löst Rechtschreibprüfung aus (Gelesen 1068 mal)
emil17
Frischling
Offline
Beiträge: 4
Skript zum versenden von Mails aus Excel löst Rechtschreibprüfung aus
«
am:
13.06.12 - 13:52:51 »
Hallo zusammmen,
ich bräuchte mal dringend Hilfe.
Ich möchte eine automatisch generierte Mail aus Excel mittels VBA Skript versenden. Leider wird das Skript durch die Notes Rechtschreibprüfung unterbrochen. Wer weiss wie man die Rechtschreibprüfung unterbinden kann?
Hier der VBA Code, den ich im Internet gefunden habe.
Sub lotus(sEmpfang As String, sKopie As String, sBetrifft As String, sText As String)
Dim session As Object, db As Object, doc As Object, rtobject, ws As Object
Dim AttachMe As Object, DerAnhang As Object
Dim user As String, server As String, mailfile As String, sBlindKopie As String
Dim vAn As Variant, vCopy As Variant, vBlind As Variant, sAnhang As String
On Error GoTo Fehler
'sText = "Erste Zeile!" & vbCrLf & "Zweite" & vbCrLf & "Dritte" ' Testtext
sText = Replace(sText, vbCrLf, Chr(10)) ' Zeilenumbrüche ändern
' sBetrifft = " Beispiel"
'Wenn du keine Kopie od Blindkopie versenden willst, dann grad weglassen
'sKopie = "" ' Einträge durch " ; " getrennt
'sBlindKopie = "Email1 ; Email2 " ' Einträge durch " ; " getrennt
vAn = Split(sEmpfang, " ; ") ' Empfänger Array
sAnhang = "" ' Muss natürlich richtig gesetzt werden C:\TEST.pdf
If Len(sKopie) > 0 Then vCopy = Split(sKopie, " ; ") 'cc Array
If Len(sBlindKopie) > 0 Then vBlind = Split(sBlindKopie, " ; ") 'bcc Array
Set session = CreateObject("notes.notessession") ' Notes muss gestartet sein
user = session.UserName
server = session.GetEnvironmentString("MailServer", True)
mailfile = session.GetEnvironmentString("MailFile", True)
Set db = session.getdatabase(server, mailfile)
Set doc = db.createdocument()
doc.Form = "Memo"
doc.SendTo = vAn ' an array
If Len(sKopie) > 0 Then doc.CopyTo = vCopy 'cc Array
If Len(sBlindKopie) > 0 Then doc.blindcopyto = vBlind 'bcc Array
doc.Subject = sBetrifft ' die Betreffzeile
doc.SAVEMESSAGEONSEND = True
doc.PostedDate = Now
'Die Zeilen mit dem Anhang nach hier oben verschieben, ist wichtig die Reihenfolge
' *******************************************
If sAnhang <> "" Then
Set AttachMe = doc.CREATERICHTEXTITEM("Attachment")
Set DerAnhang = AttachMe.EMBEDOBJECT(1454, "", sAnhang) ',"Attachment" wird nicht benötigt
End If
'*******************************
Set ws = CreateObject("Notes.NotesUIWorkspace") ' **durch das öffnen des Dokumentes durch NotesUIWorkspace**
Call ws.EDITDOCUMENT(True, doc) ' **erreicht man das die eingestellte Signatur aus den **
Set doc = ws.CURRENTDOCUMENT ' **Lotus Notes Optionen eingefügt wird **
Call doc.GOTOFIELD("Body")
Call doc.insertText(sText)
Call doc.Send(True)
Call doc.Close 'Schliesst das gesendete Formular
Call doc.Save(True, True)
Aufraeumen:
On Error Resume Next
Set AttachMe = Nothing
Set DerAnhang = Nothing
Set ws = Nothing
Set doc = Nothing
Set db = Nothing
Set session = Nothing
Exit Sub
Fehler:
Resume Aufraeumen
End Sub
«
Letzte Änderung: 14.06.12 - 07:06:06 von emil17
»
Gespeichert
Axel
Moderatoren
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 8605
It's not a bug, it's Notes
Re: Skript zum versenden von Mails aus Excel löst Rechtschreibprüfung aus
«
Antworten #1 am:
14.06.12 - 08:35:42 »
An welcher Stelle wird das Skript denn unterbrochen?
Was passiert wenn du die Rechtschreibprüfung ausschaltest?
Axel
Gespeichert
Ohne Computer wären wir noch lange nicht hinterm Mond!
Server: 8.5.1 und 8.5.2 auf Win2003 (R2) und Win2008 32/64bit
Clients: 8.5.2 dt. und engl. auf WinXP und Win7
emil17
Frischling
Offline
Beiträge: 4
Re: Skript zum versenden von Mails aus Excel löst Rechtschreibprüfung aus
«
Antworten #2 am:
14.06.12 - 13:10:49 »
Hallo Axel,
wenn ich die autom. Rechtschreibprüfung ausschalte, dann läuft das Skript durch.
Bei eingeschalteter Rechtschreibprüfung geht nach dem Befehl
Call doc.Send(True)
die Box für die Rechtschreibprüfung auf. Erst wenn diese geschlossen wird z.B. durch drücken auf die Schaltfläche "Ungeprüft senden" läuft das Skript weiter.
Da das Programm an mehrere Nutzer verteilt werden soll, sollte die eigentlich nützliche Funktion der Rechtschreibprüfung für das normale Arbeiten mit Notes eingeschaltet bleiben.
ich habe beim Stöbern auch schon diesen Artikel gefunden.
http://atnotes.de/index.php?topic=15222.0;wap2
Dieser funktioniert aber nicht unter VBA
«
Letzte Änderung: 14.06.12 - 13:14:16 von emil17
»
Gespeichert
koehlerbv
Moderatoren
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 19529
Re: Skript zum versenden von Mails aus Excel löst Rechtschreibprüfung aus
«
Antworten #3 am:
14.06.12 - 13:34:33 »
Sollen denn die Benutzer überhaupt noch etwas in dem Mail editieren können, bevor es versendet wird?
Wenn ja, dann ist das mit der Rechtschreibprüfung ja des Nutzers Wunsch und korrekt - und von Dir nicht abschaltbar.
Wenn nicht, dann erstelle das Mail einfach über das Backend und verschicke es auch so.
Bernhard
Gespeichert
Pilot's desaster - S-400 is faster ...
Axel
Moderatoren
Gold Platin u.s.w. member:)
Offline
Geschlecht:
Beiträge: 8605
It's not a bug, it's Notes
Re: Skript zum versenden von Mails aus Excel löst Rechtschreibprüfung aus
«
Antworten #4 am:
14.06.12 - 13:36:40 »
Solange du das Mail im Frontend öffnest
Code:
...
Set ws = CreateObject("Notes.NotesUIWorkspace") ' **durch das öffnen des Dokumentes durch NotesUIWorkspace**
Call ws.EDITDOCUMENT(True, doc) ' **erreicht man das die eingestellte Signatur aus den **
Set doc = ws.CURRENTDOCUMENT
....
und dann erst sendest schlägt die Rechtschreibprüfung zu.
Du musst alles im Backend machen. Nur dann bleibt die Rechtschreibprüfung außen vor.
Tipp:
Die entsprechende Signatur kannst du aus dem Calenderprofile auslesen.
Axel
Gespeichert
Ohne Computer wären wir noch lange nicht hinterm Mond!
Server: 8.5.1 und 8.5.2 auf Win2003 (R2) und Win2008 32/64bit
Clients: 8.5.2 dt. und engl. auf WinXP und Win7
emil17
Frischling
Offline
Beiträge: 4
Re: Skript zum versenden von Mails aus Excel löst Rechtschreibprüfung aus
«
Antworten #5 am:
14.06.12 - 13:55:02 »
Hallo Axel,
ich würde das ganze ja auch gerne im Backend machen.
Leider enthält der Mailtext auch einen Link. Bisher habe ich es im Backend nicht geschafft, dass LN mir einen Link daraus macht. Wenn die Mail beim Empfänger ankommt, wird zwar der Link als Text angezeigt, aber wenn man darauf klickt passiert nichts.
Ich hoffe ich habe es verständlich beschrieben.
Ich habe es auch mit dem Code probiert, die mail kommt zwar an, aber nur als Text nicht als html
Set richStyle = session.CreateRichTextStyle
'Create and set the Body content
Set body = MailDoc.CREATERICHTEXTITEM("Body")
richStyle.PASSTHRUHTML = True
Call body.APPENDSTYLE(richStyle)
Call body.AppendText("<B>Hello</B>")
Gespeichert
emil17
Frischling
Offline
Beiträge: 4
Re: Skript zum versenden von Mails aus Excel löst Rechtschreibprüfung aus
«
Antworten #6 am:
14.06.12 - 13:59:45 »
Zitat von: emil17 am 14.06.12 - 13:55:02
Hallo Axel,
ich würde das ganze ja auch gerne im Backend machen.
Leider enthält der Mailtext auch einen Link. Bisher habe ich es im Backend nicht geschafft, dass LN mir einen Link daraus macht. Wenn die Mail beim Empfänger ankommt, wird zwar der Link als Text angezeigt, aber wenn man darauf klickt passiert nichts.
Ich hoffe ich habe es verständlich beschrieben.
Ich habe es auch mit dem Code probiert, die mail kommt zwar an, aber nur als Text nicht als html
Code:
Function sendemail()
Dim Maildb As Object
Dim MailDoc As Object
Dim body As Object
Dim session As Object
Dim richStyle As Object
Dim richtext As Object
Dim sendto As Variant
Dim username As String
Dim maildbname As String
'Start a session to notes
Set session = CreateObject("Notes.Notessession")
'Call Session.Initialize
username = session.username
maildbname = Left$(username, 1) & Right$(usermane, (Len(username) - InStr(1, username, ""))) & ".nsf"
''Open the mail database in notes
Set Maildb = session.GETDATABASE("", maildbname)
''Open the mail database in notes
If Maildb.IsOpen = True Then
Else
Call Maildb.OPENMAIL
End If
''Create the mail document
Set MailDoc = Maildb.CREATEDOCUMENT
MailDoc.sendto = "xy@atnotes.de"
MailDoc.Subject = "Test lotus Notes"
MailDoc.Form = "Memo"
MailDoc.CONTENTTYPE = "text/html; charset=iso-8859-1"
MailDoc.preference = no
'Session.CONVERTMIME = False
Set richStyle = session.CreateRichTextStyle
'Create and set the Body content
Set body = MailDoc.CREATERICHTEXTITEM("Body")
richStyle.PASSTHRUHTML = True
Call body.APPENDSTYLE(richStyle)
Call body.AppendText("<B>Hello</B>")
'Call body.richStyle.AppendText("<B>Hello</B>")
Call body.AppendText("<a href=http://www.atnotes.de>atnotes</a>")
Call body.ADDNEWLINE(2)
Call body.AppendText("Hello HTML")
MailDoc.SAVEMESSAGEONSEND = True
Call MailDoc.REPLACEITEMVALUE("PostedDate", Now())
Call MailDoc.SEND(False)
Call MailDoc.Save(True, False)
'Session.CONVERTMIME = True
Set Maildb = Nothing
Set MailDoc = Nothing
Set body = Nothing
Set session = Nothing
End Function
«
Letzte Änderung: 14.06.12 - 14:21:03 von emil17
»
Gespeichert
Seiten:
[
1
]
« vorheriges
nächstes »
Gehe zu:
Bitte wählen Sie ein Ziel:
-----------------------------
ATNOTES TEAM
-----------------------------
=> Neuigkeiten - Wichtiges
===> Archiv
-----------------------------
Lotus Notes / Domino 9
-----------------------------
=> ND9: Administration & Userprobleme
=> ND9: Entwicklung
-----------------------------
Lotus Notes / Domino 8
-----------------------------
=> ND8: Administration & Userprobleme
=> ND8: Entwicklung
=> ND8: Entwicklung - XPages
-----------------------------
Lotus Notes / Domino 7
-----------------------------
=> ND7: Administration & Userprobleme
=> ND7: Entwicklung
-----------------------------
Lotus Notes / Domino 6
-----------------------------
=> ND6: Administration & Userprobleme
=> ND6: Entwicklung
-----------------------------
Domino 5 und frühere Versionen
-----------------------------
=> Administration & Userprobleme
=> Entwicklung
-----------------------------
Lotus Notes / Domino Sonstiges
-----------------------------
=> Tipps und Tricks
=> Tools & Downloads
=> Projekt Bereich
===> Help-Desk Applikation !!Help!!
=> Java und .NET mit Notes/Domino
=> Companion Products
=> OLE/COM-Programmierung
=> Aus- und Weiterbildung
-----------------------------
Best Practices
-----------------------------
=> At Notes Best Practices
=> Diskussionen zu Best Practices
-----------------------------
Sonstiges
-----------------------------
=> Offtopic
=> Kritik & Vorschläge
=> Infrastruktur
=> Job Suche/Angebote
1 Stunde
1 Tag
1 Woche
1 Monat
Immer
Einloggen mit Benutzername, Passwort und Sitzungslänge
Powered by SMF 1.1.18
|
SMF © 2006, Simple Machines
Impressum Atnotes.de -
Powered by Syslords Solutions -
Datenschutz
| Partner:
Tinte / Toner günstig
|
handys