Domino 9 und frühere Versionen > ND8: Entwicklung

Lotus Notes Kalender aus VBA ansprechen

(1/3) > >>

Jürgen73:
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
--- Ende Code ---

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 :-[

koehlerbv:
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

m3:
http://www-10.lotus.com/ldd/ddwiki.nsf/dx/cs_schema_toc - da steht alles drinnen.
Vor allem dieses Kapitel: http://www-10.lotus.com/ldd/ddwiki.nsf/dx/cs_schema_descriptions#rptappt

Damn, Bernhard war schneller :)

koehlerbv:
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

Jürgen73:
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

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln