• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:「Active Directoryプロパティがキャッシュに見つかりません」の回避)

Active Directoryプロパティがキャッシュに見つかりません - 回避方法

このQ&Aのポイント
  • Active Directoryにアクセスしてユーザーを検索し表示するVBAスクリプトで、システムに初めから登録されているユーザーのFullNameプロパティが登録されていない場合、'Active Directoryプロパティがキャッシュに見つかりません'というエラーが発生します。
  • FullNameプロパティの有無を判別する関数は存在しないため、回避策としてはAdministratorなどのユーザーにFullNameプロパティを登録するか、他のプロパティを使用してユーザーを特定することが考えられます。
  • Active Directoryプロパティの設定を変更せずにエラーを回避するためには、ユーザーを検索する際にFullNameプロパティの値が存在するか確認し、エラーが発生しないような処理を追加する必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

> FullNameプロパティの有無を判別してif等で処理を分けたいのですが、 > プロパティの有無を確認する関数がわかりません。 Active Directory は良く知りませんが、取得できないならできないで 一般的なエラートラップを組み込めば良いのでは? Do Until objRecordSet.EOF   Set objUser = GetObject(objRecordSet.Fields("AdsPath").Value)   If objUser Is Nothing Then     Debug.Print "例外処理"   Else     Debug.Print objUser.FullName   End If   objRecordSet.MoveNext Loop とか、On Error ステートメントで Do Until objRecordSet.EOF   On Error Resume Next   Set objUser = GetObject(objRecordSet.Fields("AdsPath").Value)   If Err Then     Debug.Print "例外処理"   Else     Debug.Print objUser.FullName   End If   On Error Goto 0   objRecordSet.MoveNext Loop とか。コードの内容まではみてませんが...

1percent
質問者

お礼

回答ありがとうございます。 とりあえずエラートラップでやってみようと思います。

関連するQ&A