Autor Thema: E-Mailversand aus Excel geht mit LN 9 nicht mehr  (Gelesen 41165 mal)

Offline Benni1988

  • Frischling
  • *
  • Beiträge: 41
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #40 am: 16.03.16 - 13:29:46 »
so..:)

Bei

Code
 doc.Subject = sBetrifft ' die Betreffzeile
 calendarProfile = db.GetProfileDocument("CalendarProfile")
 Signature = calendarProfile.GetItemValue("Signature")(0)
 Set rtitem = doc.CREATERICHTEXTITEM("body")
 Call rtitem.APPENDTEXT(sText & Signature)
 doc.SAVEMESSAGEONSEND = True
 doc.PostedDate = Now

kommt folgende Fehlermeldung

Code
Fehlernummer: 91
Fehlerbeschreibung: Objektvariable oder With-Blockvariable nicht festgelegt

Also liegt es wohl an der Zeile..

Bin leider langsam echt am verzweifeln:(

Noch einmal eine andere Frage, was spricht denn genau gegen ein UiDocument?

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #41 am: 16.03.16 - 13:44:36 »
uiDoc.send hat deinen Notes-Client zum Absturz gebracht.

Hier scheint eine Variable nicht gesetzt zu sein, bist du deinen Code schon mal im Excel-Debugger durchgegangen?
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline Benni1988

  • Frischling
  • *
  • Beiträge: 41
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #42 am: 16.03.16 - 16:23:30 »
also meinst du das bringt nichts, das ganze mit UiDocument noch einmal neu aufzubauen?

Ja, das habe ich gemacht und habe 3 Haltepunkte gesetzt.
Und bekomme bis stSignature keinen Fehler, bis dahin läuft der code wohl ohne Fehler durch

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #43 am: 16.03.16 - 16:39:56 »
Es war deine Aussage, das der Notes-Client abstürzt und das Problem wurde noch nicht gelöst, oder hast du das mal ausprobiert?  =>
Code
AppActivate "IBM Notes"
SendKeys "%1"

Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline Andrew Harder

  • Senior Mitglied
  • ****
  • Beiträge: 295
  • Geschlecht: Männlich
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #44 am: 16.03.16 - 16:54:46 »
Code
 doc.Subject = sBetrifft ' die Betreffzeile
 calendarProfile = db.GetProfileDocument("CalendarProfile")
 Signature = calendarProfile.GetItemValue("Signature")(0)
 Set rtitem = doc.CREATERICHTEXTITEM("body")
 Call rtitem.APPENDTEXT(sText & Signature)
 doc.SAVEMESSAGEONSEND = True
 doc.PostedDate = Now

kommt folgende Fehlermeldung

Code
Fehlernummer: 91
Fehlerbeschreibung: Objektvariable oder With-Blockvariable nicht festgelegt

Die Fehlermeldung weist darauf hin, das eine der benutzten Variablen kein Objekt enthält.
Finde die Fehlerzeile, dann findest Du die entsprechende Variable.
Das war auch der Grund für den Split, wenn Du mehrere Variablen in einer Zeile nutzt, verlierst Du Zeit bei der Fehlersuche.

Wenn Du aber nach jeder der Zeilen mit Debug.Print etwas ausgibst, , dann ist die nächste Ausgabe die nicht kommt die Fehlerzeile.
Falls Du Probleme mit Debug.Print hast, nimm notfalls die Messagebox, Hauptsache die Fehlerzeile wird gefunden.

Ist schon sehr umständlich dieses VBA, wäre das ein Knopf in Notes der auf Excel zugreift, dann würde die Fehlerzeile brav mit ausgegeben.
Keine Ahnung was man sich bei Microsoft da gedacht hat.

Klingt jetzt etwas komisch, aber: Bist Du sicher, das Du im Netz bist und auch in Notes nicht auf Insel stehst?
Andy

Offline Benni1988

  • Frischling
  • *
  • Beiträge: 41
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #45 am: 16.03.16 - 17:35:16 »
ja, APPActivate "IBM NOTES" habe ich probiert, aber habe es net hinbekommen..Aber kann ja da auch noch einmal ganz von vorne anfangen, falls ich (bzw. eher Ihr/wird) das anders nicht hinbekommen.

Mein Lotus Notes ist online, d.h ich muss ja im Netz sein. Meine Id liegt ja auch im Netzwerk.

Ich muss leider nur jetzt los, ich probiere das debug.print morgen mal :)

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #46 am: 16.03.16 - 18:20:55 »
Weißt du was "APPActivate" macht?
Der 1. Google-Treffer passt schon und gibt dir die Antwort ;)
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline Benni1988

  • Frischling
  • *
  • Beiträge: 41
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #47 am: 17.03.16 - 11:05:47 »

Ich habe es jetzt mal mit Debug.Print versucht.

Code
Option Explicit
 
Sub lotus()

 Dim sText As String, sEmpfang As String, sBetrifft As String
 Dim session As Object, db As Object, doc As Object, rtobject As Object
 Dim rtitem As Object, sKopie As String
 Dim AttachMe As Object, DerAnhang As Object
 Dim user As String, server As String
 Dim mailfile As String, sBlindKopie As String
 Dim vAn As Variant, vCopy As Variant
 Dim vBlind As Variant, sAnhang As String
 Dim stSignature As String
 
 
 On Error GoTo Fehler
 

 sEmpfang = "test" ' Einträge durch " ; " getrennt
 Debug.Print sEmpfang
 sBetrifft = "Test"                 ' die Betreffzeile
 Debug.Print sBetrifft
 sText = "funktioniert es? "                            ' Testtext
 Debug.Print sText
 sKopie = " "                       ' Einträge durch " ; " getrennt
 Debug.Print sText
 sBlindKopie = " "                  ' Einträge durch " ; " getrennt
 Debug.Print sBlindKopie
 vAn = Split(sEmpfang, " ; ")       ' Empfänger Array
 Debug.Print vAn
 sAnhang = ""                       ' richtiger Pfad Muss natürlich richtig gesetzt werden
 Debug.Print sAnhang
 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
 Debug.Print session
 user = session.UserName
 Debug.Print user
 server = session.GetEnvironmentString("MailServer", True)
 Debug.Print server
 mailfile = session.GetEnvironmentString("MailFile", True)
 Debug.Print mailfile
 Set db = session.getdatabase(server, mailfile)
 Set doc = db.createdocument()
 
 doc.form = "Memo"
 Debug.Print doc.form
 doc.sendTo = vAn                                       ' an array
 Debug.Print doc.sendTo
 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
 Debug.Print doc.Subject
 stSignature = db.GetProfileDocument("CalendarProfile").GetItemValue("Signature")(0)
 Debug.Print stSignature
 Set rtitem = doc.CREATERICHTEXTITEM("body")
 Debug.Print rtitem
 Call rtitem.APPENDTEXT(sText & stSignature)
 Debug.Print rtitem
 doc.SAVEMESSAGEONSEND = True
 doc.PostedDate = Now
 
 ' *******************************************
 If sAnhang <> "" Then
  Set AttachMe = doc.CREATERICHTEXTITEM("Attachment")
  Set DerAnhang = AttachMe.EMBEDOBJECT(1454, "", sAnhang, "Attachment")
 End If
 
 
 '*******************************
 
 Call doc.Send(False)
 
Fehler:
 MsgBox "Fehler in Sub Fehler 0 Erste Division" & vbCrLf _
 & "Fehlernummer: " & Err.Number & _
 vbCrLf & "Fehlerbeschreibung: " & Err.Description

 
Aufraeumen:
 On Error GoTo Fehler
 Set rtitem = Nothing
 Set AttachMe = Nothing
 Set DerAnhang = Nothing
 Set db = Nothing
 Set doc = Nothing
 Set session = Nothing
 Exit Sub
 
End Sub

Allerdings springt er immer . wenn ich bei sAnhang ankomme, direkt nach unten und bringt mir die Fehlermeldung (durch MsgBox)

Code
Fehlernummer:13
Fehlerbeschreibung: Typen unverträglich

Die anderen Debug.Print bzw Haltepunkte werden übersprungen...wieso?
Hab ich mal wieder was flasch gemacht?

@jBuubleboy: Dadurch stürzt LN auch ab. Musste es aber auf AppActivate (IBM Notes Mail) ändern

Offline Micha B

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.922
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #48 am: 17.03.16 - 12:08:12 »
Zitat
Meine Id liegt ja auch im Netzwerk.
Was bedeutet das? Liegt Dein Data Verzeichnis auf einem Netzlaufwerk? Wenn ja, solltest Du als erstes Notes lokal nutzen, vielleicht liegt ja da schon der Hund begraben.

Offline Benni1988

  • Frischling
  • *
  • Beiträge: 41
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #49 am: 17.03.16 - 12:17:34 »
ich kann Lotus Notes leider nur "online" benutzen, sprich meine ID, usw liegt auf dem Firmennetzwerk. Das ist bei uns irgendwie Vorgabe...
Kann das also nicht testen...

Offline Andrew Harder

  • Senior Mitglied
  • ****
  • Beiträge: 295
  • Geschlecht: Männlich
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #50 am: 17.03.16 - 15:22:13 »
ich kann Lotus Notes leider nur "online" benutzen, sprich meine ID, usw liegt auf dem Firmennetzwerk. Das ist bei uns irgendwie Vorgabe...
Kann das also nicht testen...
Du kannst ein File vom Netz nicht auf lokal kopieren?

Also ist die Fehlerzeile diese hier:
Code
Set session = CreateObject("notes.notessession") ' Notes muss gestartet sein
?

Wenn ja, dann hau die Prints raus und mach eine vor der Zeile und eine nach der Zeile.
Dann musst Du nur noch hinbekommen das diese Zeile funktioniert.

Um den Spass, weil es bei Windows mit DDLs auch so ist, ersetze die Zeile mal mit:
Code
Set Session = CreateObject("Notes.NotesSession")

Hast Du Dein Notes gestartet, oder ist es aus?

EDIT:
Falls alles nicht hilft kannst Du auch Notes über COM ansprechen
Code
Set session = CreateObject("Lotus.NotesSession")
Ist persönlich mein Favorit, aber UI Klassen kann man da nicht benutzten.
« Letzte Änderung: 17.03.16 - 15:29:50 von Andrew Harder »
Andy

Offline Benni1988

  • Frischling
  • *
  • Beiträge: 41
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #51 am: 17.03.16 - 15:33:49 »
Nein, das kann bzw. darf ich nicht... und ja Lotus Notes ist gestartet.

Wenn ich es über

Code
Set session = CreateObject("Lotus.NotesSession")
anspreche, kommt folgende Fehlermeldung

Code
 Fehlernummer: -2147217013
Fehlerbeschreibung: Die Methode 'Username' für das Objekt 'ISession' ist fehlgeschlagen

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #52 am: 18.03.16 - 08:47:15 »
Zwischen "doc.PostedDate = Now" und "Fehler:" nimm mal diesen Code:
Code
doc.PostedDate = Now
If sAnhang <> "" Then 
  Call rtitem.EMBEDOBJECT(1454, "", sAnhang)
end if
rtitem.saveToDisk = True

Call doc.Send(False)

exit sub
Fehler:

Erstelle und verwende als Anhang ein einfaches Beispiel (zum Testen), z.B. "C:\mein.txt".

In Excel, im Debugger können einzelne Zeilen mit F8 durchlaufen werden, eine gute Methode um Variablen zu überwachen und Fehler zu finden.
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline Benni1988

  • Frischling
  • *
  • Beiträge: 41
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #53 am: 21.03.16 - 08:22:23 »
Guten Morgen,

so senden mit Anhang geht ohne Fehlermeldung, beim ersten Mal. Dann kommt wieder eine Fehlermeldung.

Code
Fehlerbeschreibung: Automatisierungsfehler
Ausnahmefehler des Servers

Aber die Signatur ist immer noch nicht dabei..

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #54 am: 21.03.16 - 17:59:15 »
Bei welcher Excel-Code-Zeile kommt der Fehler?
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline Benni1988

  • Frischling
  • *
  • Beiträge: 41
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #55 am: 29.03.16 - 08:14:23 »
soory für die späte Antwort.

Call doc.Send(False)

Erst in der Zeile :(

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.290
  • Geschlecht: Männlich
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #56 am: 29.03.16 - 10:08:24 »
mach mal vor dem Send ein Save, und berichte ob und wo der Absturz stattfindet:
Code
call doc.save(true, false)

Eine einfache, lokal und fest hinterlegte Datei erzeugt den gleichen Fehler, spricht Absturz erst beim 2. Senden?
Gruss Erik :: Freelancer :: KI-Dev, Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16 / OLI 2.0

--
Nur ein toter Bug, ist ein guter Bug!

Offline Benni1988

  • Frischling
  • *
  • Beiträge: 41
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #57 am: 29.03.16 - 10:19:24 »
So habe ich angepasst.

Call doc.Save(True, False)
Call doc.Send(False)

Die Datei wird angehängt, sowohl eine lokale, als auch eine Datei auf dem Server.
Die Fehlermeldung kommt immer noch erst ab
Call doc.send(false)

Aber immer noch keine Signatur und die Fehlernummer bzw. Fehlerbeschreibung ist leer.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #58 am: 29.03.16 - 10:56:50 »
Der Inhalt des Items SendTo ist korrekt gefüllt (gültige interne oder Internet-Mailadresse)? Und für eine Signatur finde ich keinen Code, der bisher gepostet wurde.

Bernhard

Offline Benni1988

  • Frischling
  • *
  • Beiträge: 41
Re: E-Mailversand aus Excel geht mit LN 9 nicht mehr
« Antwort #59 am: 29.03.16 - 11:00:54 »
ja, die ist gültig. Die E-Mail kommt auch an, sobald ich die leere Fehlermeldung wegdrücke.

anbei der Code für die Signatur


doc.Subject = sBetrifft ' die Betreffzeile
 stSignature = db.GetProfileDocument("CalendarProfile").GetItemValue("Signature")(0)
 Set rtitem = doc.CREATERICHTEXTITEM("body")
 Call rtitem.APPENDTEXT(sText & stSignature)
 doc.SAVEMESSAGEONSEND = True
 doc.PostedDate = Now


Viele Grüße

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz