Autor Thema: Lotus Notes Kalender aus VBA ansprechen  (Gelesen 12222 mal)

Offline Jürgen73

  • Frischling
  • *
  • Beiträge: 4
Lotus Notes Kalender aus VBA ansprechen
« am: 10.05.11 - 15:09:17 »
Hallo Experten in LN,

ich bin neu im Bereich LN und habe folgendes Vorhaben. Ich habe einen Abt. Kalender in Excel VBA geschrieben. Dort gibt es diverse Eintragungsmöglichkeiten. Eine ist "I" für Innendienst. Dieser Innendienst ist immer von 08:00 bis 16:00. Dieser Kalender wird in aller Regel monatlich geführt. Nun möchte ich, dass auf Knopfdruck der/die eingetragenen Termine in den LN Kalender des Benutzers eingetragen werden soll. Idealerweise, werden die versch. Datumseinträge in den Bereich "Wiederholung" in LN übernommen.

Dann könnte ich mir vorstellen, dass auf Knopfdruck ein Termin eingestellt wird, der sich dann unter "Wiederholen" die Datumseinträge erhält. Ich komme mit VBA ziemlich gut zurecht, nur wie sag ich dass nun LotusNotes?

Einen alten Code habe ich im Internet gefunden jedoch komme ich damit nicht wirklich klar.

Hier der Code
Code
Public Sub SendNotesAppointment(VornameX As String, NachnameX As String, _
                                WDatumX As Variant, SubjectX As Variant)
'*****************************************************************************
'*
'*  Mit dieser Funktion werden Termine aus  in den
'*  Lotus Notes Kalender des Anwenders geschrieben.
'*
'*****************************************************************************
'Set up the objects required for Automation into lotus notes
    Dim Maildb As Object 'The mail database
    Dim MailDbName As String 'The persons notes mail database name
    Dim CalenDoc As Object 'The calendar entry itself
    Dim WorkSpace As Object
    Dim Subject As String 'The Headline
    Dim Appdate As String 'The calendardate
   
    Subject = SubjectX          'Vorlauftext
    Subject = Subject & VornameX & " "              'Vorname holen
    Subject = Subject & NachnameX                   'Nachname holen
    Set WorkSpace = CreateObject("Notes.NOTESUIWORKSPACE")
    Set CalenDoc = WorkSpace.COMPOSEDOCUMENT("", "", "Appointment")
    CalenDoc.FIELDSETTEXT "AppointmentType", "4"
                          'AppointmentType 1 = Jahrestag
                          'AppointmentType 2 = Ganztägige Veranstaltung
                          'AppointmentType 3 = Beprechung
                          'AppointmentType 4 = Erinnerung
    CalenDoc.FIELDSETTEXT "StartDate", CStr(Format(WDatumX, "dd/mm/yy"))
    CalenDoc.FIELDSETTEXT "startTime", CStr("09:00:00")
    'CalenDoc.FIELDSETTEXT "Duration", CStr(Duration)
    CalenDoc.FIELDSETTEXT "Subject", Subject
    CalenDoc.FIELDSETTEXT "Body", Subject
    CalenDoc.FIELDSETTEXT "Categories", "PC"   'PC = Anrufe
    CalenDoc.Save False, False, False
    CalenDoc.Close
    Set Maildb = Nothing
    Set CalenDoc = Nothing
    Set WorkSpace = Nothing
    MsgBox "Der Wiedervorlagetermin ist in Notes übertragen worden"
End Sub

Wer kann mir helfen???

Vielen Dank im voraus.

Viele Grüße
Jürgen

P.S. Ich habe die gleiche Frage auch noch in das Excel-Forum bei Herber gestellt. Nur damit keiner wg. Cross-Posting schimpft :-[

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #1 am: 10.05.11 - 15:41:14 »
Hallo Jürgen,

willkommen bei AtNotes!

Die erforderlichen Informationen findest Du im Calendaring & Scheduling Scheme von IBM Lotus.

Das Zusammenspiel mit Notes via COM erläutert das Red "COMe together".

HTH,
Bernhard

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #2 am: 10.05.11 - 15:42:11 »
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #3 am: 10.05.11 - 15:45:32 »
Ist doch wurscht, Martin. Wir stehen doch nicht im "fast posting contest"  ;)

Noch eine Bemerkung an Jürgen: Den Code, den Du da gefunden hast, passt nicht zu Deiner Anforderung. Und er ist schlicht Dreck - lösche und vergiss ihn.

Bernhard

Offline Jürgen73

  • Frischling
  • *
  • Beiträge: 4
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #4 am: 10.05.11 - 16:01:42 »
WOW :o

Das ging aber flott. Ich werde mir die Links gleich mal ansehen und versuchen das ganze umzusetzen.

Vielen Dank Euch beiden. Danke für den Hinweis bzgl. Code.

Viele Grüße

Jürgen

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #5 am: 10.05.11 - 16:41:00 »
Die AtNotes-Community IST flott  ;)

Bernhard

Offline lancelot2011

  • Frischling
  • *
  • Beiträge: 20
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #6 am: 27.09.11 - 14:17:29 »
Hallo allerseits,
ich habe folgenden Code, der mir Termine aus einer Excel datei in den Outlook Kalender schreibt.
Code
Option Explicit

Sub Outlookexport()
Dim OutApp As Object, apptOutApp As Object

'Termine aus Excel-Sheet lesen
Range("A2").Select
Do Until ActiveCell.Value = ""

If ActiveCell.Offset(0, 6).Value = "x" Then GoTo TerminDa
'Prüfen ob in Spalte G ein x ist,
'dass bedeutet, dass der Termin schon einmal erfasst wurde

Set OutApp = CreateObject("Outlook.Application")
Set apptOutApp = OutApp.CreateItem(1)

With apptOutApp
'Termine werden aus den Zellen gelesen
.Start = Format(ActiveCell.Value, "dd.mm.yyyy") & " " & Format(ActiveCell.Offset(0, 1).Value, "hh:mm")
.End = Format(ActiveCell.Value, "dd.mm.yyyy") & " " & Format(ActiveCell.Offset(0, 5).Value, "hh:mm")
.Subject = ActiveCell.Offset(0, 2).Value
'Zusätzlicher Text
.Body = ""
'Ort
.Location = ActiveCell.Offset(0, 3).Value
.Save
End With

ActiveCell.Offset(0, 6).Value = "x"
' In die 6. Spalte ein x setzen heißt:
' der Termin wurde schon einmal in den Kalender eingetragen
' Deshalb den Code ab hier weiter abarbeiten
TerminDa:

'Nächste Zeile auswählen
ActiveCell.Offset(1, 0).Select

Set apptOutApp = Nothing
Set OutApp = Nothing
Loop

MsgBox "Termine wurden in den Outlook Kalender übertragen!"

End Sub

Was muss ich denn ändern, wenn ich das in den Notes Kalender schreiben will. Ich  bin zwar den Lnks hier gefolgt, aber ich habe von den Notes Namen leider zu wenig bis gar keine Ahnung und weiss so gar nicht, was ich da machen soll.
Vielleicht kann mir ja hier jemand helfen.

Danke und Gruss

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #7 am: 27.09.11 - 14:21:51 »
Wenn Du mit den verlinkten Dokumentationen und Anleitungen aus Post #1 nicht klar kommst, bist Du ohne Chance.

Bernhard

Offline lancelot2011

  • Frischling
  • *
  • Beiträge: 20
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #8 am: 27.09.11 - 14:27:43 »
Hallo Bernhard,

ist das so aufwändig bzw. kompliziert ?

Gruss
Stephan

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #9 am: 27.09.11 - 14:31:13 »
Das musst Du nach dem Studium der Dokus für Dich selbst bestimmen, Stephan.

Bei konkreten Fragen helfen wir natürlich gern.

Bernhard

Offline lancelot2011

  • Frischling
  • *
  • Beiträge: 20
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #10 am: 27.09.11 - 14:38:50 »
Naja, ich komme mit der Fülle der Felder nicht klar, ich weiss z.B. nicht welche Felder ich dafür benötige. Ich habe meinen Kalender in eine Textdatei exportiert, aber die Fülle der Felder erschlägt mich  :o
Wie spreche ich z.B. den Kalender an und kann das Makro aus bestimmten Zellen den Inhalt in den Kalender schreiben.
Ich möchte mir hier keine fertige Lösung "erjammern", wär natürlich am einfachsten, zumal es für die Könner hier vermutlich kein grosser Aufwand wäre. Will ja auch etwas dabei lernen, aber im sugenblick sehe ich den wald vor lauter Bäumen nicht.

Gruss
Stephan

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Lotus Notes Kalender aus VBA ansprechen
« Antwort #11 am: 27.09.11 - 16:11:34 »
Den "Kalender" kannst Du derzeit nicht ansprechen. Die REST-API dafür kommt erst.

Ein Kalendereintrag ist ein Dokument in der Mail-DB, in der einige Felder gesetzt sind. Am einfachsten das Schema-Dokument nehmen, dazu auch noch manuell einen Kalendereintrag in der Form erstellen, wie Du ihn gerne hättest und dann vergleichen, welche Felder Du brauchst, ...
Mit ein bissl Try & Error hat man das recht schnell (vor allem bei nicht wiederholenden Terminen).
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz