2017-08-22 1 views
1

コマンドボタンを押したときに特定の予定表(既定値ではない)で会議を作成するようにVBSを設定しようとしています。私のコードは動作しますが、デフォルトのカレンダーで会議を作成します。私はそれを取り巻くことを試みましたが、私はVBS(主にVBAを使用しました)には新しいです。私はVBAとVBSが似ていることを知っていますので、何か小さなものを微調整する必要があります。ミーティングをMy Calendarsの下にあるTestという名前のカレンダーに配置します。Outlook 2010 VBS特定の予定表に会議を追加する方法

Sub commandbutton1_Click() 

If CommandButton1 = False Then 
Dim objOL 'As Outlook.Application 
Dim objAppt 'As Outlook.AppointmentItem 

Const olAppointmentItem = 1 
Const olMeeting = 1 
Const olFree = 0 


Set objOL = CreateObject("Outlook.Application") 
Set objAppt = objOL.CreateItem(olAppointmentItem) 

objAppt.Subject = "My Test Appointment" 
objAppt.Start = #8/24/17 3:50:00 PM# 
objAppt.Duration = 1 
objAppt.Location = "Followup" 
objAppt.Body = "Test Verbiage" 
objAppt.ReminderMinutesBeforeStart = 1 
objAppt.BusyStatus = olFree 
objAppt.Save() 
Set objAppt = Nothing 
Set objOL = Nothing 

End If 


End Sub 
+0

をオフノートで - 私はVBAコードは、コマンドボタンからOutlookで実行することができないという印象の下です。私が間違っている場合は、私がVBAを使う方がはるかに好きなので教えてください。ありがとう! – Rami

+1

コードのどの部分が会議の開催場所を指定しますか? – KS7X

+0

共有カレンダーですか?カレンダー名を指定する必要があります。 – 0m3r

答えて

0

これを試してみてください:

Sub commandbutton1_Click() 

If CommandButton1 = False Then 

Const olAppointmentItem = 1 
Const olMeeting = 1 
Const olFree = 0 

Set objOutlook = CreateObject("Outlook.Application") 
Set objNamespace = objOutlook.GetNamespace("MAPI") 

Set objDictionary = CreateObject("Scripting.Dictionary") 

objDictionary.Add "August 24, 2017", "My Test Appointment" 


colKeys = objDictionary.Keys 

For Each strKey in colKeys 
dtmApptDate = strKey 
strApptName = objDictionary.Item(strKey) 

Set objAppt = objOutlook.CreateItem(olAppointmentItem) 
objAppt.Subject = strApptName 
objAppt.Start = dtmApptDate & " 3:50 PM" 
objAppt.Duration = 1 
objAppt.Location = "Followup" 
objAppt.Body = "Test Verbiage" 
objAppt.ReminderSet = True 
objAppt.ReminderMinutesBeforeStart = 1 
objAppt.AllDayEvent = True 
objAppt.BusyStatus = olFree 
objAppt.Save 
Next 


End If 


End Sub 
+0

ちょうどそれを打ちました。無効なプロシージャ呼び出しまたは引数:「objNamespace.GetDefaultFolder」 – Rami

+1

設定objCalendar = objNamespace.GetDefaultFolder(olFolderCalendar) を削除し、再び 奇数を試してみたが、私と一緒に悪い何も起こらなかった私は、エラーを与えています。 元のスクリプトを編集しました。 End ifとEndサブ文字列も含まれています – Malbordio

+0

コードは実行されますが、同じ位置に戻ります。会議は作成されますが、既定の予定表に作成されます。 Testという名前のカレンダーで作成する必要があります。 – Rami

関連する問題