none
Auslesen von Mails aus Outlook über VBA

    Frage

  • Hallo Zusammen,

     

    ich nutze schon seit langer Zeit folgenden Code um Mails aus bestimmten Ordnern in Outlook auszulesen. Wir haben nun auf Office 2010 umgestellt. Danach ging es eine paar mal weiterhin, aber plötzlich, ohne dass ich etwas am Code geändert hätte, bekomme ich die Fehlermeldung "Funktionsmerkmal der Objektbililiothek nicht unterstützt" bei der Zeile

    Set objOutlApp = CreateObject("Outlook.Application")

    Kann mir jemand sagen was ich tun muss damit das wieder funktioniert?

     

    Hier der ganze Code:

    Function GetServiceEMails(Folderpath, strSubjektNr As String)

    'Folder auslesen

    Dim aFolders
    Dim i
    Dim objNS As Outlook.NameSpace
    Dim objOutlApp As Outlook.Application
    Dim objPubFolder As Outlook.MAPIFolder
    Dim objParentFolder As Outlook.MAPIFolder
    Dim objTargetFolder As Outlook.MAPIFolder
    'Dim obj As Outlook.PostItem
    Dim obj As Outlook.Items
    Dim myExplorer As Outlook.Explorer
    Dim myMovedItem As Object

    Dim cnn As New ADODB.Connection
    Dim rst As New ADODB.Recordset
    Dim rst1 As New ADODB.Recordset
    Dim strSQL As String
    Dim strNow As String
    Dim itm As Object
    Dim itm1 As Object

    strNow = Now

    Set cnn = CurrentProject.Connection
     
    Dim intAntwort As String

    Set objOutlApp = CreateObject("Outlook.Application")
    Set objNS = objOutlApp.GetNamespace("MAPI")

      strFolderpath = Replace(Folderpath, "/", "\")
      aFolders = Split(Folderpath, "\")

      'set the root folder
      Set objPubFolder = objNS.Folders(aFolders(0))
     
      'loop through the array to get the subfolder
      'loop is skipped when there is only one element in the array
      For i = 1 To UBound(aFolders)
     
      Set objParentFolder = objPubFolder
     
        Set objPubFolder = objPubFolder.Folders(aFolders(i))
       
    If objPubFolder Is Nothing Or Err.Number <> 0 Then

    MsgBox "Der Ordner " & aFolders(i) & " existiert nicht.", vbOKOnly, "Ordner nicht vorhanden"

    Exit Function

    End If
     
      Next

    'Folder nach Inhalt durchsuchen

    Dim strEntryID As String, strStoreID As String, strBetreff As String, strBody As String, strEMail As String
    Dim strEmpfangsdatum As String, strKMitarbeiter
    Dim strTicketNr As String

    Set objTargetFolder = objPubFolder.Folders("bearbeitet")

    strStoreID = objTargetFolder.StoreID

    strAnzItems = objPubFolder.Items.Count

    'For i = 1 To objPubFolder.Items.Count

    For i = 1 To strAnzItems

    'For Each itm In objPubFolder.Items

    'With obj

    With objPubFolder.Items(i)

    strEntryID = .EntryID
    strEMail = .SenderEmailAddress
    strBetreff = .Subject
    strBody = .Body
    strEmpfangsdatum = .ReceivedTime
    .UnRead = False
    .Save
    'Mail verschieben
    Set myMovedItem = .Move(objTargetFolder)
    strEntryID = myMovedItem.EntryID
    'Set objTargetFolder = Nothing
    myMovedItem.UnRead = False
    myMovedItem.Save

    ...

     

    Würde mir sehr helfen, wenn michhier jemand auf dieSprünge bringen könnte.

     

    Vielen Dank und einen guten Rutsch

     

    Patrick

     

     

     

    Samstag, 31. Dezember 2011 13:43

Antworten

  • Wenn es nur vereinzelt auftritt, ist die COM-Registrierung hin. Lass mal eine Office-Reparatur laufen.

    Samstag, 31. Dezember 2011 14:15
    Moderator

Alle Antworten

  • Wenn es nur vereinzelt auftritt, ist die COM-Registrierung hin. Lass mal eine Office-Reparatur laufen.

    Samstag, 31. Dezember 2011 14:15
    Moderator
  • Hallo,

    Patrick Pohlmann wrote:

    ... Office 2010 ... Fehlermeldung
    "Funktionsmerkmal der Objektbililiothek nicht unterstützt" bei der Zeile

    Set objOutlApp = CreateObject("Outlook.Application")

    Was passiert, wenn du OL2010 ueber den Icon startest?
    Hast du evtl. noch eine Office-Version auf demselben Rechner, und passiert
    das "manchmal", wenn die andere Version zwischendurch gestartet worden war?

    Gruss - Peter


    Mitglied im http://www.dbdev.org
    FAQ: http://www.donkarl.com

    Sonntag, 1. Januar 2012 10:19
    Moderator
  • Hallo Zusammen,

     

    nach der Office Reparatur und Neustart des Rechners scheint es wieder zu gehen. Sehr sonderbar.

     

    Vielen Dank für Eure Hinweise.

     

    Viele Grüße

     

    Patrick

    Montag, 2. Januar 2012 09:04