Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
840to844
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
840to844
840to844
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Lotus Notes, Arbeitsumgebung wechseln

Lotus Notes, Arbeitsumgebung wechseln
24.01.2007 00:29:52
Florian
Hallo, Forum,
Guten Abend oder Guten Morgen!
Meine Excel-Datei schickt eine automatisierte Fehlermeldung von den Anwendern an mich, damit ich Fehler im Code nicht erst selbst entdecken muss (es sind einige Dutzend Seiten Code). Beim Öffnen der Datei wird geprüft, ob im Zwischenspeicher in der Registry mehr als zehn Fehlermeldungen sind. In diesem Fall wird Lotus Notes automatisch geöffnet und die Fehlermeldungen werden in einem Memo zusammengefasst.
Das funktioniert allerdings leider nur, wenn in Lotus Notes die Arbeitsumgebung "Insel" (wir arbeiten alle mit Laptop) gewählt wurde. Bei dem Anwender, der zuvor sein Lotus mit der Arbeitsumgebung "Büro" verlassen hat, erscheint eine Fehlermeldung.
Was jetzt richtig Obertopp wäre: Kann ich mit VBA diese Arbeitsumgebung in "Insel" ändern?
Danke im Voraus und Gruß,
Florian aus Berlin

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Lotus Notes, Arbeitsumgebung wechseln
25.01.2007 14:51:33
Bertram
Hallo Florian,
hab so was ähnliches auch erst gemacht. Kannst du mal deinen Code posten, der die Mail generiert und versendet?
Gruß
Bertam
Anbei der Code
26.01.2007 05:15:42
Florian
"Diese Arbeitsmappe":
----------------------------------
Option Explicit

Private Sub Workbook_Open()
On Error Resume Next
Call Fehlerspeicher
End Sub

---------------------------------
"Modul1":
--------------------------------
Option Explicit
Sub TestProzedur()
On Error GoTo Fehlerbehandlung
' Inhalt der Prozedur
MsgBox 1 / 0 ' Fehlerbeispiel
Exit Sub
Fehlerbehandlung:
Call Fehlermeldung(Fehlertext:= _
"Name der Fehlermeldung, damit ich aus der eMail lesen kann, in welcher Prozedur der Fehler entstanden ist", _
Fehlernummer:=Err.Number, Beschreibung:=Err.Description)
Resume Next
End Sub
Sub Fehlermeldung(Fehlertext As String, Fehlernummer As Integer, Beschreibung As String)
On Error Resume Next
Dim Text As String
Dim Anzahl As Integer
Dim Schluessel As String
Text = ActiveCell.Address & "," & Fehlertext & "," & Fehlernummer & "," & Beschreibung & "," & Now
Anzahl = GetSetting("MeinProjekt", "Fehler", "AnzahlFehler") + 1
SaveSetting "MeinProjekt", "Fehler", "AnzahlFehler", Anzahl
Schluessel = "Fehler " & Format(Anzahl, "0000")
SaveSetting "MeinProjekt", "Fehler", Schluessel, Text
End Sub
Sub Fehlerspeicher()
On Error Resume Next
Dim Empfaenger
Dim Betreff
Dim Text(1 To 50)
Dim i As Integer
Dim j As Integer
Dim Anzahl As Integer
Anzahl = GetSetting("MeinProjekt", "Fehler", "AnzahlFehler")
If Anzahl = 0 Then Exit Sub
If Anzahl Empfaenger = "meineAdresse@t-online.de"
Betreff = "Automatische Fehlermeldung MeineTabelle"
For i = 1 To j
Text(i) = GetSetting("MeinProjekt", "Fehler", "Fehler " & Format(i, "0000"))
Next i
DeleteSetting "MeinProjekt", "Fehler"
NotesMail Empfaenger, Betreff, Text()
End Sub
Function NotesMail(Empfaenger As Variant, Betreff As Variant, Text As Variant)
Dim Notes As Object, NotesDB As Object, NotesMailDoc As Object
Dim SendItem, RTitem
Dim i As Integer
On Error GoTo Abbrechen
Set Notes = GetObject("", "Notes.Notessession")
Set NotesDB = Notes.GETDATABASE("", "")
Call NotesDB.OPENMAIL
Set NotesMailDoc = NotesDB.CREATEDOCUMENT
NotesMailDoc.Form = "Memo"
Call NotesMailDoc.Save(True, False)
Set SendItem = NotesMailDoc.APPENDITEMVALUE("SendTo", "")
SendItem.APPENDTOTEXTLIST Empfaenger
NotesMailDoc.Subject = Betreff
Set RTitem = NotesMailDoc.CREATERICHTEXTITEM("Body")
For i = 1 To UBound(Text)
RTitem.APPENDTEXT (Text(i))
If Text(i) "" Then RTitem.ADDNEWLINE (1)
Next
RTitem.ADDNEWLINE (1)
Call NotesMailDoc.Send(False)
NotesMailDoc.RemoveItem ("DeliveredDate")
Call NotesMailDoc.Save(True, False)
Call Notes.Close
Set Notes = Nothing
Set NotesDB = Nothing
Abbrechen:
End Function
----------------------
Danke im Voraus!
Freue mich auf Kommentare, Fragen, Ideen.
Gruß, Florian aus Berlin
Anzeige
AW: Code zum Download, da kein SyntaxHighlighter
26.01.2007 10:11:55
Bertram
Hallo Florian,
hab mich jetzt mal durchgewurstelt und das ganze nachgestellt. Also bei mir funktioniert dein Code immer einwandfrei. Arbeite auch mit Laptop. Dein Problem konnte ich bisher nicht nachstellen.
Habe mal deine 'Function NotesMail' etwas abgeändert. Mit dieser Anordung habe ich das damals gemacht und das funktioniert. ich wüßte zwar nicht warum, aber vielleicht ist dein Problem ja damit auch behoben (*hoff*)
Falls es immer noch nicht geht, müssen wir uns was anderes einfallen lassen:-)
https://www.herber.de/bbs/user/39934.xls
Gruß
Bertram
Anzeige
Fehlermeldungen
26.01.2007 13:11:42
Florian
Hallo, Bertram,
"If text(i) 0 Then RTitem = RTitem & text(i) & vbCrLf" ist natürlich nett. Danke.
Mit der Fehlermeldung hatte ich Dich falsch verstanden (*wachwerd*). Notes produziert keine Fehlermeldung, sondern versendet einfach keine Mail (das Notes-Fenster bleibt bei mir im Hintergrund lediglich offen).
Ich kann rechts unten (Release 6.5.4) zwischen zwei Arbeitsumgebungen wählen: Insel und Büro. Und nur, wenn ich zuvor Notes in der Umgebung "Insel" verlassen habe, klappt es dann.
Anbei die Meldungen: https://www.herber.de/bbs/user/39943.doc
Gruß, Flori
Anzeige
Nachfrage
26.01.2007 11:35:03
Bertram
Hi Flo,
wie lautet denn die Fehlermeldung?
Gruß
Bertram
Fehlermeldung, neuer Dateidownload mit KORREKTUR
26.01.2007 12:21:52
Florian
Hallo, Bertram, hallo, Forum,
das steht dann in der VBA-Registry:
$A$1,Name der Fehlermeldung, damit ich aus der eMail lesen kann, in welcher Prozedur der Fehler entstanden ist,11,Division durch Null,26.01.2007 12:13:37
Die Fehlermeldung, die Excel (in meinem Beispiel als provozierte Fehlermeldung) ausgeben würde, lautet "Fehler 11, Division durch Null".
Hier ist die Fehlermeldung in die Tabelle eingetragen, außerdem als Screenshot der Registry. Zudem habe ich meine benutzerdefinierte Sysmbolleiste gelöscht. Sorry, hatte ich zuvor vergessen.
https://www.herber.de/bbs/user/39940.xls
Gruß, Flori
Anzeige
AW: Fehlermeldung, neuer Dateidownload mit KORREKTUR
26.01.2007 12:38:59
Bertram
Hi,
so hab ich das nicht gemeint. Das ist schon klar. Aber in deinem ersten Posting schreibst du
'Das funktioniert allerdings leider nur, wenn in Lotus Notes die Arbeitsumgebung "Insel" (wir arbeiten alle mit Laptop) gewählt wurde. Bei dem Anwender, der zuvor sein Lotus mit der Arbeitsumgebung "Büro" verlassen hat, erscheint eine Fehlermeldung.'
Diese Fehlermeldung meine ich.
Gruß
bertram
ich (*wachwerd*)
26.01.2007 13:14:42
Florian
Hallo, Bertram,
siehe Posting zwei Zeilen drüber. Sorry.
Gruß, Flori
AW: ich (*wachwerd*)
26.01.2007 14:30:11
Bertram
Hallo Flo,
jetzt steh ich auf'm Schlauch:-( Wie 'zwei zeilen drüber'?
Meinst du, dass wenn du Lotus mit "Büro" verlassen hast in Excel die Fehlermeldung "Fehler 11, Division durch Null" erhältst anstatt, dass der Code das On Error ... ausführt, oder bekommst du eine Fehlermeldung von VBA?
Lass uns doch mal definieren:
Fehlermeldung = Fehlermeldung im wörtlichen Sinne, also Excel oder VBA
Fehlernachricht = Deine generierten Fehlermeldungen in der Registry
*nix durchblick*
Gruß
Bertram
Anzeige
AW: ich (*wachwerd*)
26.01.2007 16:32:01
Florian
Hallo, Bertram,
diesen Beitrag hier meinte ich: https://www.herber.de/forum/messages/841081.html
*** Lass uns doch mal definieren:
*** Fehlermeldung = Fehlermeldung im wörtlichen Sinne, also Excel oder VBA
*** Fehlernachricht = Deine generierten Fehlermeldungen in der Registry
OK.
"Fehlernachricht": hat sich ja erledigt, die war ja zu keinem Zeitpunkt relevant. Und dass Du die nicht gemeint haben kannst, hätte mir auch selbst klar sein können.
In meinem Beginn-Posting schrieb ich etwas über eine Fehlermeldung. Da hatte ich nicht aufgepasst. Es erscheint keine Fehlermeldung, sondern das Memo wird in Notes einfach nicht erstellt. Eine Fehlermeldung hingegen erscheint (und genau das ist meine Verwechslung, nur deshalb gehe ich hier darauf ein, denn es ist nicht aus Excel), wenn ich Lotus Notes über ein anderes Programm aufrufen lasse - FinePrint pdfFactory. Siehe https://www.herber.de/bbs/user/39943.doc
Der VBA-Code in Excel funktioniert in Abhängigkeit von der Arbeitsumgebung in Notes. Was meine ich damit? - Screenshot siehe https://www.herber.de/bbs/user/39950.doc
Ist die Arbeitsumgebung auf INSEL, dann läuft alles rund.
Hat der Anwender Lotus Notes nach der letzten Benutzung in der Arbeitsumgebung BÜRO verlassen, dann läuft der Code nicht. Und genau dieses Problem gibt es ja offensichtlich nicht nur mit dem verwendeten Code, sondern eben auch bei der pdfFactory. Daraus schließe ich, dass es kein VBA-Problem ist, sondern, dass ich in Notes VBA-gesteuert auf INSEL wechseln muss, damit es läuft.
Ich hoffe, jetzt ist alles klar (*ausatme*).
Gruß,
Flori aus Berlin
Anzeige

132 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige