QA@IT

会議開催通知の自動承諾をすると実行時エラーになる

1773 PV

環境はOutlook2010です。
ルールが起動した時に以下のマクロを動かしたいのですが、どうしても印をしたところで実行時エラ-'91':オブジェク卜変数または With ブ口ック変数が設定されていません。となります。
また相手から会議のキャンセルを受け取った時に削除もされません。
調べてみてもよくわからないのですが・・・詳しい方教えて頂けませんでしょうか?

Public Sub DisplaySubjectByRule(ByRef objItem As MeetingItem)
Dim myNameSpace As Outlook.NameSpace
Dim myFolder As Outlook.Folder
Dim myMtgReq As Outlook.MeetingItem
Dim myAppt As Outlook.AppointmentItem
Dim myMtg As Outlook.MeetingItem
 Set myNameSpace = Application.GetNamespace("MAPI")
  Set myFolder = myNameSpace.GetDefaultFolder(olFolderInbox)
  Set myMtgReq = myFolder.Items.Find("[MessageClass] = 'IPM.Schedule.Meeting.Request'")
Set myMtgReq2 = myFolder.Items.Find("[MessageClass] = 'IPM.Schedule.Meeting.Canceled'")
If TypeName(myMtgReq) <> "Nothing" Then
 Set myAppt = myMtgReq.GetAssociatedAppointment(True)
  Set myMtg = myAppt.Respond(olResponseAccepted, True)
 myMtg.Send ''''エラーになる
ElseIf TypeName(myMtgReq2) = "Nothing" Then
 Set myAppt = myMtgReq2.GetAssociatedAppointment(False)
  Set myMtg = myAppt.Respond(olResponseAccepted, False)
 myMtg.Send''''エラーになる
myMtg.Delete
End If
End Sub

  • 単純なミスですね!
    引数の記述が間違ってます。

    Set myMtg = myAppt.Respond(olResponseAccepted, True)

    Set myMtg = myAppt.Respond(olMeetingAccepted, True)

    へ変更してみてください。

    -
  • ありがとうございます。
    バージョンによってコードが違うみたいですね(・・;)
    -
ウォッチ

この質問への回答やコメントをメールでお知らせします。