Create Appointment in Outlook

T

tianung

I'm trying to use the following code in Excel to create an appointment
in Outlook. But I keep getting an error with the declaration "Dim
olApt As Outlook.AppointmentItem". It would say: "Compile Error: User-
defined type not defined". If I remove this declaration then an email
message (instead of an appointment) is created ! Please help !


Sub SetAppt()

Dim olApp As Object

On Error Resume Next
Set olApp = GetObject(, "Outlook.Application")

If Err.Number = 429 Then
Set olApp = CreateObject("Outlook.Application")
End If

'Dim olApt As Outlook.AppointmentItem
Set olApt = olApp.CreateItem(olAppointmentItem)

With olApt
.Start = Date + 1 + TimeValue("19:00:00")
.End = .Start + TimeValue("00:30:00")
.Subject = "Piano lesson"
.Location = "The teachers house"
.Body = "Don't forget to take an apple for the teacher"
.BusyStatus = olBusy
.ReminderMinutesBeforeStart = 120
.ReminderSet = True
'.Save
.Display
End With

Set olApt = Nothing
Set olApp = Nothing

End Sub
 
L

Leith Ross

I'm trying to use the following code in Excel to create an appointment
in Outlook. But I keep getting an error with the declaration "Dim
olApt As Outlook.AppointmentItem". It would say: "Compile Error: User-
defined type not defined". If I remove this declaration then an email
message (instead of an appointment) is created ! Please help !


Sub SetAppt()

Dim olApp As Object

On Error Resume Next
Set olApp = GetObject(, "Outlook.Application")

If Err.Number = 429 Then
Set olApp = CreateObject("Outlook.Application")
End If

'Dim olApt As Outlook.AppointmentItem
Set olApt = olApp.CreateItem(olAppointmentItem)

With olApt
.Start = Date + 1 + TimeValue("19:00:00")
.End = .Start + TimeValue("00:30:00")
.Subject = "Piano lesson"
.Location = "The teachers house"
.Body = "Don't forget to take an apple for the teacher"
.BusyStatus = olBusy
.ReminderMinutesBeforeStart = 120
.ReminderSet = True
'.Save
.Display
End With

Set olApt = Nothing
Set olApp = Nothing

End Sub

Hello tianung,

Replace olAppointmentItem with the number 1 (one). Because you ar
using late binding, Outlook's constants are available to you in code

--
Leith Ros

Sincerely,
Leith Ross

'The Code Cage' (http://www.thecodecage.com/
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top