ich krieg Plaque.... Ich habe folgenden eigentlich trivialen Code und raffs net. Ich will über Excel einen Outlook Termin eintragen.
Public Sub CreateUserAppointment()
On Error GoTo mistGehtNet
Dim objolApp As New Outlook.Application
Dim objNS As Outlook.NameSpace
Dim objFolder As Outlook.MAPIFolder
Dim objAppt As Outlook.AppointmentItem
Dim objRecip As Outlook.recipient
Dim strName As String
' ### name or email address of person whose Calendar you want to use ###
strName = "MeinName"
Set objNS = objolApp.GetNamespace("MAPI")
Set objRecip = objNS.CreateRecipient(strName)
objRecip.resolve
If objRecip.resolved Then
MsgBox "resolved"
Else
MsgBox "not resolved"
End If
If Not objRecip Is Nothing Then
Set objFolder = objNS.GetSharedDefaultFolder(objRecip, Outlook.OlDefaultFolders. _
olFolderCalendar)
MsgBox "Vor dieser Zeile kommt der Error"
If Not objFolder Is Nothing Then
MsgBox "OK"
Else
MsgBox "NOK"
End If
Else
MsgBox "No recip"
End If
Set objFolder = Nothing
Set objAppt = Nothing
Set objRecip = Nothing
Set objNS = Nothing
Set objolApp = Nothing
MsgBox "OK"
Exit Sub
mistGehtNet:
MsgBox Err.Description
End Sub
Bis zur Zeile
Set objFolder = objNS.GetSharedDefaultFolder(objRecip, Outlook.OlDefaultFolders.olFolderCalendar)
läuft alles schön. Der User is resolved und existent. Der User hat mir seinen Adressfolder NICHT freigegeben (das soll auch so sein). Jetzt erwarte ich eigentlich, dass GetSharedDefaultFolder einen Fehler produziert (da der Ordner ja nicht freigegeben ist) und brav zu meinem Sprunglabel "mistGehtNet" springt. Passiert aber nicht. Excel springt nicht dort hin und gibt mir auch nicht über msgbox Err.Description den Fehler aus, sondern es wird einfach das Programm angehalten! Was zum Donner mache ich falsch? Eigentlich müsste GetSharedDefaultFolder doch einen abfangbaren Fehler produzieren, oder? Oder gibt es Alternativen, wie ich abfragen kann, ob der Folder freigegeben ist?
Viele Grüße und vieeeelen Dank für jedwede Hilfe
Norman