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

Termine von Excel nach Outlook

Termine von Excel nach Outlook
30.12.2004 14:01:02
Excel
Hallo,
mit einem Makro möchte ich viele Termine von einer Excel-Liste in einen Outlook-Kalender schreiben. Der Kalender befindet sich in einem Postfach, zu dem mehrere Nutzer gemeinsamen Zugriff haben (Postfach "Gruppe").
Führe ich diese Prozedur aus, wird der erste Termin richtig in den Kalender eingetragen. Wird beim Durchlaufen der Schleife der zweite Termin mit .Save gespeichert, wird der erste Termin automatisch wieder aus dem Kalender gelöscht.
Habe aber keine Ahnung, warum.
Kann mir jemand weiterhelfen? Kann es evtl. etwas mit der Definition der Objektvariablen zu tun haben?
Hier der Code:

Sub Termine_Von_Excel_Nach_Outlook_Uebertragen()
Dim dblBetrag As Double
Dim Datum
Dim i As Integer
Dim objOutlook As Outlook.Application
Dim myNameSpace As NameSpace
Dim myRecipient As Recipient
Dim Kalender As MAPIFolder
Dim wshQuelle As Worksheet
Dim objItem As Object
Dim Antwort As String
Application.ScreenUpdating = False
Antwort = MsgBox("Sollen diese Daten in den Outlook-" & vbCr _
& "Kalender übertragen werden?", _
vbQuestion + vbYesNo, "Excel -> Outlook")
If Antwort = vbNo Then Exit Sub
Application.ScreenUpdating = False
Set wshQuelle = ActiveWorkbook.Worksheets("Termine")
If Err > 0 Then
MsgBox "Die Tabelle 'Termine' wurde nicht gefunden!" & vbCr _
& "Sie befinden sich evtl. nicht in der richtigen Datei!" & vbCr _
& "Die Daten können nicht nach Outlook übertragen werden!", vbCritical + vbOKOnly
End If
wshQuelle.Range("A2").Select
Do Until ActiveCell.Value = ""
Set apptOutlook = objOutlook.CreateItem(olAppointmentItem)
Set objOutlook = CreateObject("Outlook.Application")
Set myNameSpace = objOutlook.GetNamespace("MAPI")
Set myRecipient = myNameSpace.CreateRecipient("Gruppe")
myRecipient.Resolve 'Berechtigung prüfen
If myRecipient.Resolved Then
Set Kalender = myNameSpace.GetSharedDefaultFolder _
(myRecipient, olFolderCalendar)
End If
Set objItem = Kalender.Items(9)
With objItem
dblBetrag = ActiveCell.Offset(0, 1).Value
.Subject = Format(dblBetrag, "##,#0.00")
Datum = ActiveCell.Offset(0, 7).Value + ActiveCell.Offset(0, 8)
.Start = Datum
.Duration = 30
.ReminderMinutesBeforeStart = 10
.ReminderPlaySound = False
.ReminderSet = True
.Save
End With
ActiveCell.Offset(1, 0).Select
'wenn Zeilenende erreicht, aussteigen
If ActiveCell.Value = "Summe" Then Exit Do
Set objItem = Nothing
Set Kalender = Nothing
Set objOutlook = Nothing
Set myNameSpace = Nothing
Set myRecipient = Nothing
Loop
MsgBox "Termine nach Outlook übertragen!"
End Sub

Vielen Dank im voraus.
Gruß
Jürgen

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Termine von Excel nach Outlook
30.12.2004 14:15:22
Excel
Hallo Jürgen,
ich kann mich täuschen, aber ich sehe keine Schleife.
gruß
DieterB
AW: Termine von Excel nach Outlook
30.12.2004 14:38:14
Excel
hi,
1.: die variable apptoutlook haste nich deklariert.
Dim apptOutlook As New Outlook.Application 'könnte ein schreibfehler bei dir sein
Fehlt bei dir option explicit?
2. was ist mit der .Close - Anweisung für den neuen kalendereintrag?
Mischa
AW: Termine von Excel nach Outlook
Excel
Hi Mischa,
zu 1: hast Recht, war Schreibfehler
zu 2: Welche close-Anweisung meinst Du? Dachte, speichern und die Objektvariablen auf Nothing zu setzen, würde reichen. Welches Objekt muss denn dann mit close geschlossen werden?
Danke.
Gruß
Jürgen
Anzeige
Noch offen: Termine von Excel nach Outlook (oT)
30.12.2004 18:49:07
Excel
'
AW: Noch offen: Termine von Excel nach Outlook (oT)
Excel
hi,
hatte keine zeit, weiter dein problem zu testen.
vom grundsatz her: Wenn du eine Worddatei speicherst und dann aber wieder änderst, wirst du immer nur in der selben datei änderungen haben.
Du willst aber gerade immer neue termine erstellen - also solltest du den eben erstellten nicht nur speichern, sondern auch schlließen. und grad das hab ich in deinem code beim schnellen überfliegen nich finden können.
Bitte probier das mal aus. habe die close anweisung auch nciht finden können.
Have Fun!
Mischa

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige