Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1580to1584
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
Inhaltsverzeichnis

Outlook auslesen funktioniert mit 2013 nicht meh

Outlook auslesen funktioniert mit 2013 nicht meh
28.09.2017 10:00:56
Marianne
Hallo,
ich war bereits seit vielen Tagen auf diversen Seiten unterwegs um folgendes Problem zu lösen, vielleicht könnt ihr mir helfen..
Ich habe ein Makro geschrieben, welches Kalendereinträge aus Outlook ausliest und im Excel speichert. Das funktioniert mit meiner Version (2010, Version 14) auch wunderbar, bei Kollegen mit 2013, Version 15 aber nicht. Es kommt auch keine Fehlermeldung, sondern einfach kein Kalendereintrag, obwohl welche da sind (und bei mir auch im Excel angezeigt werden).
Hier der Code:
Sub Kalender_export_2013()
UserForm2.Show
Dim ThisWorkbookPath
Dim Ausgangsdatei
ThisWorkbookPath = ThisWorkbook.Path
Ausgangsdatei = Range("Ausgangsdateiname")
Workbooks.Open Range("Ausgangsdatei")
'Variablen Definieren
Dim Outl_App
Dim Namens_R
Dim akt_Ordner
Dim Kalendereintrag
Dim Element_kal As Items
Dim StartDatum As Date
Dim EndeDatum As Date
Dim i
Dim sTargetWS
Dim TargetWS
Const olFolderCalendar As Long = 9
Set Outl_App = CreateObject("Outlook.Application")
Set Namens_R = Outl_App.GetNamespace("MAPI")
Set akt_Ordner = Namens_R.PickFolder 'beliebigen Kalender auswählen
Set Element_kal = akt_Ordner.Items
sTargetWS = "Outlook_Statusbericht"
Set TargetWS = Worksheets(sTargetWS)
StartDatum = UserForm2.TextBox1
EndeDatum = UserForm2.TextBox2
EndeDatum = EndeDatum + 1
'StartDatum = "01.09.2017"
'EndeDatum = "02.09.2017"
'Überschriften vorbereiten
Cells(1, 1) = "Ereignis"
Cells(1, 2) = "Beginn am"
Cells(1, 3) = "Besprechungsressourcen"
Cells(1, 4) = "Beschreibung"
Cells(1, 5) = "Kategorien"
Cells(1, 6) = "Ort"
Cells(1, 7) = "Serientermin"
'Sicherstellen, dass bei Serien die einzelnen Einträge übernommen werden
Element_kal.Sort "Start"
Element_kal.IncludeRecurrences = True
Set Kalendereintrag = Element_kal.Find("[Start]>""" & StartDatum & """ AND [End]
Der Code ist bestimmt nicht besonders effizient (bin Anfänger), also wundert euch nicht..
Grüße,
Marianne

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

Betreff
Datum
Anwender
Anzeige
AW: Outlook auslesen funktioniert mit 2013 nicht meh
28.09.2017 12:11:20
Marianne
Update: mit 2013 läuft man hier rein, mit 2010 nicht..
'Abbruch bei Tagen ohne Termine
If TypeName(Kalendereintrag) = "Nothing" Then
MsgBox "Keinen Termin in genanntem Zeitraum gefunden!"
Exit Sub
End If
Bin für jede Idee dankbar!
AW: Outlook auslesen funktioniert mit 2013 nicht meh
28.09.2017 12:24:31
Nepumuk
Hallo Marianne,
If TypeName(Kalendereintrag) = "Nothing" Then
ist Unsinn. Wenn dann so:
If Kalendereintrag Is Nothing Then
Gruß
Nepumuk
AW: Outlook auslesen funktioniert mit 2013 nicht meh
28.09.2017 12:34:51
Nepumuk
Hallo Marianne,
kopier mal folgenden Code in eine neue Mappe und teste. Bei mir unter Office 2013 funktioniert der einwandfrei:
Option Explicit

Sub Kalender_export_2013()
    
    'Variablen Definieren
    Dim Outl_App As Object
    Dim Namens_R As Object
    Dim akt_Ordner As Object
    Dim Kalendereintrag As Object
    Dim Element_kal As Object
    Dim StartDatum As Date
    Dim EndeDatum As Date
    Dim i As Long
    
    Const olFolderCalendar As Long = 9
    
    Set Outl_App = CreateObject("Outlook.Application")
    Set Namens_R = Outl_App.GetNamespace("MAPI")
    Set akt_Ordner = Namens_R.PickFolder 'beliebigen Kalender auswählen
    Set Element_kal = akt_Ordner.Items
    
    Tabelle1.Name = "Outlook_Statusbericht"
    
    StartDatum = DateSerial(2017, 1, 1)
    EndeDatum = DateSerial(2017, 12, 31)
    EndeDatum = EndeDatum + 1
    
    Application.ScreenUpdating = False
    
    'Überschriften vorbereiten
    Cells(1, 1) = "Ereignis"
    Cells(1, 2) = "Beginn am"
    Cells(1, 3) = "Besprechungsressourcen"
    Cells(1, 4) = "Beschreibung"
    Cells(1, 5) = "Kategorien"
    Cells(1, 6) = "Ort"
    Cells(1, 7) = "Serientermin"
    
    'Sicherstellen, dass bei Serien die einzelnen Einträge übernommen werden
    Element_kal.Sort "Start"
    Element_kal.IncludeRecurrences = True
    
    Set Kalendereintrag = Element_kal.Find("[Start]>""" & StartDatum & """ AND [End]<""" & _
        EndeDatum & """")
    
    i = 2
    
    'Schleife für das Auslesen der normalen Termine
    Do Until Kalendereintrag Is Nothing
        
        With Kalendereintrag
            
            Tabelle1.Cells(i, 1).Value = .Subject
            Tabelle1.Cells(i, 2).Value = Left(.Start, 10)
            Tabelle1.Cells(i, 3).Value = .Resources
            Tabelle1.Cells(i, 4).Value = .Body
            Tabelle1.Cells(i, 5).Value = .Categories
            Tabelle1.Cells(i, 6).Value = .Location
            Tabelle1.Cells(i, 7).Value = .IsRecurring
            
            i = i + 1
            
        End With
        
        Set Kalendereintrag = Element_kal.FindNext
        
    Loop
    
    Application.ScreenUpdating = True
    
    'objekte freigeben
    Set Kalendereintrag = Nothing
    Set Outl_App = Nothing
    Set Namens_R = Nothing
    Set akt_Ordner = Nothing
    Set Element_kal = Nothing
End Sub

Gruß
Nepumuk
Anzeige
AW: Outlook auslesen funktioniert mit 2013 nicht meh
28.09.2017 12:19:32
Nepumuk
Hallo Marianne,
bei mir funktioniert dein Code. Ich musst aber eine Zeile anpassen.
Statt:
TargetWS.Cells(i, 1).Value = Kalendereintrag
Musste ich:
TargetWS.Cells(i, 1).Value = Kalendereintrag.Subject
Aber daran liegt es nicht.
Ändere als 1. mal:
Dim Element_kal As Items
in:
Dim Element_kal As Object
und lösche den Verweis auf die Outlook-Object-Library. Dann step den Code mal mit F8 durch.
Gruß
Nepumuk
AW: Outlook auslesen funktioniert mit 2013 nicht meh
29.09.2017 13:02:15
Marianne
Hallo Nepomuk,
der Hammer! Es läuft! Habe sowohl Kalendereintrag.Subject übernommen, als auch das "as Items" durch "as Object" ersetzt.
Vielen, vielen Dank!
Grüße,
Marianne
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige