当日のリソース予約をブロックするためのスクリプト


コメントにて以下のようなご要望をいただきました。


社内でOutlook2010・Exchange2010を使用しています。

会議室予約を他のポータル製品からExchangeのリソースメールボックスに移行したいと考えています。
その際、当日は会議室予約の閲覧のみで登録出来ないように制御したいのですが、何か方法がございますでしょうか。

BookingWindowInDaysでは、何日前からの予約が可能かを制限できるようですが、当日予約不可にするパラメータが見つかりません。

代替手段として、毎朝、当日の空きをすべて特権ユーザが抑えてしまうというのをOutlookのマクロで可能でしょうか。


確かに、Exchange Server 2010 のリソース予約機能では、当日の予約を制限するという方法は用意されていません。
当日の空いている時間にすべて会議出席依頼を送付して予約するということもできますが、この方法だと会議出席依頼を送信したユーザーに大量の返信が送られてくるため、メンテナンスに手間がかかることが想定されます。

そこで、特定のユーザーにリソース メールボックスの予定表に書き込み権限を与え、そのユーザーが予定表に終日の予定を入れることで、新規の予約受付をブロックするという方法を考えてみました。

まず、リソース メールボックスに特定のユーザーの権限を与えるには、Exchange Server 2010 の Exchange 管理シェルで以下のようなコマンドを実行します。

   Add-MailboxFolderPermission -Identity リソースメールボックスのアドレス:\予定表 -User ユーザーのアドレス -AccessRights Editor

そして、下記の内容を拡張子が vbs のファイルとして保存し、上記の権限を与えたユーザーでこのスクリプトを毎朝タスク スケジューラーで実行することにより、当日の予約をブロック可能です。

' ここをトリプルクリックでマクロ全体を選択できます。
'
Dim olkApp
Dim objSession
Set olkApp = CreateObject("Outlook.Application")
Set objSession = olkApp.Session
BlockToday "confroom1@example.local" ' ブロックするリソースのアドレスを指定
BlockToday "confroom2@example.local" ' リソースの数だけアドレスを変更して記述
BlockToday "confroom3@example.local"
'
Sub BlockToday(strUser)
    Const olFolderCalendar = 9
    Const olBusy = 2
    Dim objRec 'As Recipient
    Dim fldCal 'As Folder
    Dim apptBlock 'As AppointmentItem
    Set objRec = objSession.CreateRecipient(strUser)
    objRec.Resolve
    Set fldCal = objSession.GetSharedDefaultFolder(objRec, olFolderCalendar)
    Set apptBlock = fldCal.Items.Add
    apptBlock.Subject = "予約受付終了"
    apptBlock.Start = Now
    apptBlock.AllDayEvent = True
    apptBlock.BusyStatus = olBusy
    apptBlock.ReminderSet = False
    apptBlock.Save
End Sub

マクロの登録方法やメニューへの追加について

広告

当日のリソース予約をブロックするためのスクリプト」への1件のフィードバック

  1. 教えていただいたマクロで運用を開始しています。問題なく稼働しています。
    大変助かりました。ありがとうございました。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中