Папки могут хранить больше, чем просто ожидаемый тип данных.Измените myItems на
Dim myItems As Object
и измените окно сообщения на
Debug.Print TypeName(myItems)
Затем проверьте Немедленное окно (Ctl + G), чтобы увидеть, не является ли какой-либо из элементов ContactItem.Если вы решите, что у вас есть что-то, что не является контактом, вам просто нужно проверить это.Сохраняйте myItems как Object, но используйте код вроде
If TypeName(myItems) = "ContactItem" Then
MsgBox myItems.FirstName
End If
Обычно я оставляю свои переменные типизированными как определенный элемент (например, ContactItem), пока пишу код, а затем преобразую их все в Object, когда я 'м сделано.Таким образом, вы получаете преимущества Intellisense во время кодирования.