0

VBAマクロから予定を生成し、それをOutlookのカレンダーに入れようとしています。私のコードは以下です...

Sub CommandButton1_Click()

Const olAppointmentItem As Long = 1
    Dim olapp As Object
    Dim OLNS As Object
    Dim OLAppointment As Object


    On Error Resume Next
    Set olapp = GetObject(, "Outlook.Application")
    If olapp Is Nothing Then Set olapp = CreateObject("Outlook.Application")
    On Error GoTo 0

    If Not olapp Is Nothing Then

        Set OLNS = olapp.GetNamespace("MAPI")
        OLNS.Logon

        Set OLAppointment = olapp.CreateItem(olAppointmentItem)
        OLAppointment.Subject = "Request for Leave"
        OLAppointment.Start = TimeValue(TextBox7.Text)
        OLAppointment.End = TimeValue(TextBox10.Text)

        OLAppointment.Location = "Leave"
        OLAppointment.Body = "Request for Leave"
        OLAppointment.Save

         'Set OLAppointment = olapp.Move(olfolder)

        Set OLAppointment = Nothing
        Set OLNS = Nothing
        Set olapp = Nothing
    End If

End Sub

問題は、アポイントメントが「1899年12月30日土曜日」に開始するように日付が付けられ、2つの日付の間の数日間、終日のアポイントメントとして継続する必要がある場合にのみ30分続くことです(開始日:TextBox7)(終了日:TextBox10)。

もう1つの問題は、このリクエストを誰かに送信するにはどうすればよいですか?

予定の詳細は、Excelユーザーフォームのテキストフィールドからのものです

ありがとう

4

1 に答える 1

0

TimeValueでは日付を含めることができないようで、時刻のみを含めることができます。たとえば、以下の形式で開始時刻と終了時刻を設定すると、機能します。

OLAppointment.Start = #11/26/2012 1:00:00 PM#
OLAppointment.End = #11/26/2012 2:00:00 PM#
于 2012-11-26T12:38:20.260 に答える