2017-02-14 14 views
2

VBA를 사용하여 Outlook.ExchangeUser 개체에서 일부 속성을 가져 오려고합니다.VBA를 사용하여 Microsoft Exchange 사용자 지정/확장 특성을 가져 옵니까?

  1. 은 VBA를 사용하여 확장 속성을 가져올 수 있습니다 : 나는 Exchange extended attributes

    질문을 사용하여 저장 것으로 보인다 일부 데이터를 제외하고, 내가 필요한 대부분을 당길 수?

  2. 그렇다면 어떻게됩니까? 나는 다음 Exchange 사용자 개체를 사용하여 속성을 뽑을 수

    ... 
    Dim myOlApp As Outlook.Application 
    Dim addrList As AddressList 
    Dim exchUser As Oulook.ExchangeUser 
    ... 
    Set myOlApp = CreateObject("Outlook.Application") 
    Set addrList = myOlApp.GetNamespace("MAPI").addressLists("SOMELIST") 
    Set exchUser = addrList.addressEntries("doe, john").GetExchangeUser 
    ... 
    

    : 여기

내가 뭘하는지에 대한 아이디어를 제공하는 몇 가지 코드 (이 Microsoft Excel 파일에서 VBA 코드) . 즉 ... 난 확장 속성을 당길 위의 식으로 뭔가를하려고하면, 내가 같은 오류가

MsgBox ("User company name: " + exchUser.CompanyName) 

"개체가이 속성 또는 메서드를 지원하지 않습니다." 내가 here에서 스키마를 가지고

exchUser.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x802D001E") 

...

exchUser.msExchangeAttributeX '(where X is a number from 1-15) 
exchUser.ms-Exch-Extension-Attribute-X 
exchUser.CustomAttributeX 
exchUser.ExtensionCustomAttributeX 

나는 또한 PropertyAccessor에 사용하여 시도하지만 난 그 정확한 양의 아니에요 : 나는 아무 소용에 다음과 같은 노력했다. 나는 그것을 시도 할 때 오류가 발생하지 않으며 단지 비어있는 채로 돌아옵니다 (아무 것도 당겨지지 않습니다). 나는 다른 사람들을 시도 할 수 있도록 속성 태그 목록을 찾으려고했지만 그 사람들을 찾을 수없는 것 같습니다. 누군가가 어쩌면 도움을 줄 수 있는지도 모르는 경우.

도움을 주시면 감사하겠습니다. 감사!

답변

0

내가 필요한 것을 액세스 할 수있는 방법을 찾았습니다. 기본적으로 올바른 속성 태그를 찾으면 속성 접근자를 사용하여 종료되었습니다. 내 경우에는 (확장 속성 # 7) 올바른 것이 "0x8033001F"입니다. 그래서 사용 : 비슷한 필요하지만, 아마도 다른 확장 속성을 가진 사람들을위한

exchUser.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x8033001F") 

, 나는 다운로드 및 OutlookSpy를 설치 (또는 유사한 도구)를 제안한다. 이것이 Microsoft 문서를 탐색하여 찾을 수 없었기 때문에 올바른 속성 태그를 발견 할 수 있었던 유일한 방법입니다.

희망이 있으면 도움이됩니다.