Hallo liebe Mitglieder des Forums,
ich habe ein kleines Problem hinsichtlich des Imports von Anhängen aus Email.
Seit 2 Jahren verwende ich ein Script, das bislang immer fehlerfrei lief. Ein Kollege konnte aber jetzt einen Fehler produzieren,
aus dem ich nicht ganz schlau werde und die Lösung nicht sehe.
Mein Script überprüft auf dem Exchange Server im pers. Emailpostkorb den Posteingang. Der Gedanke war, aus allen Emails mit dem Betreff
"XYZ", die in den letzten 30 Min. eingegangen sind, den Anhang in ein spez. VZ zu extrahieren. Das klappte auch.
Jetzt haben wir festgestellt, dass der Code immer im Bereich "If CDate(objItem.ReceivedTime()) >= zeit Then
If objItem.Subject Like "*" & "XYZ" & "*" Then"
hängen bleibt, wenn sich im Posteingang Emaila aus unzustellbare Rückantworten (als zb flascher Emailadressat). Dann bricht der Code ab.
Ich habe auch das Gefühl, dass dort im Betreff auf ein @-Zeichen fehlerhaft reagiert wird. Kann das jemand reproduzieren und mir gf. eine Lösung dazu sahen ?
hier der code.
Private Sub CommandButton7_Click()
'Button zum Import Email-Anhängen in den Aktenscan
Dim olApp As Object
Dim objFolder As Object
Dim objItem As Object
Dim zeit As Date
Dim Counter As Long
Dim lngAttachCount As Long
If MsgBox("Möchten Sie aus Ihrem persönlichen Email-Posteingang den Anhang importieren?" & Chr(10) & Chr(10) & "Hinweis: Es werden nur Emails der letzte 30 Minuten erkannt!", vbQuestion + vbYesNo, "Frage") = vbYes Then
Set olApp = CreateObject("outlook.application")
Set objFolder = olApp.GetNamespace("MAPI").GetDefaultFolder(6)
zeit = DateAdd("n", -30, Now()) 'Emails der letzten 30 Minuten checken
For Each objItem In objFolder.Items
If CDate(objItem.ReceivedTime()) >= zeit Then '------------------Hier bleibt er dann hängen im Debugger
If objItem.Subject Like "*" & "XYZ" & "*" Then
If objItem.Attachments.Count > 0 Then
For lngAttachCount = objItem.Attachments.Count To 1 Step -1
Counter = Counter + 1
objItem.Attachments.Item(lngAttachCount).SaveAsFile Scanordner & Format(Now(), "yyyy-mm-dd") & "_" & Format(Now(), "hh-mm-ss") & "_" & "Scan" & "_" & TextBox5 & "_" & TextBox6 & "(" & Counter & ")" & Mid(objItem.Attachments.Item(lngAttachCount).FileName, InStrRev(objItem.Attachments.Item(lngAttachCount).FileName, "."))
Next lngAttachCount
Else
End If
objItem.Delete
Else
End If
End If
Next
Set objFolder = Nothing
Set olApp = Nothing
End If
End Sub
Vielen Dank für Eure Hilfe vorab.