Here's a little function I ran across, Hope it helps
Function OutlookAppointment(sAttendees As String, sSubject As String, dtStart As Date, lDuration As Long, lReminder As Long sLocation As String, bRecurrence As Boolean) As String
Dim oAppointment As Outlook.AppointmentItem
Dim oRecurrence As Outlook.RecurrencePattern
Dim oOutlook As Outlook.Application
Dim asAttendees() As String, lThisAttendee As Long
Dim oFolder As MAPIFolder
Dim oItems As Items
' Start Outlook
' If it is already running, you'll use the same instance...
Dim olApp As Outlook.Application
Set olApp = CreateObject("Outlook.Application"
' Logon. Doesn't hurt if you are already running and logged on...
Dim olNs As Outlook.NameSpace
Set olNs = olApp.GetNamespace("MAPI"

olNs.Logon
Set oOutlook = New Outlook.Application
Set oAppointment = Outlook.CreateItem(olAppointmentItem)
'Set meeting parameters>
With oAppointment
.Duration = lDuration '(in minutes)
.Location = sLocation
.MeetingStatus = olMeeting
.Start = dtStart
.Subject = sSubject
.BusyStatus = olBusy
'.RecurrenceState
.ReminderSet = True
.ReminderMinutesBeforeStart = lReminder '(in Minutes)
End With
oAppointment.Save
'Add attendees
asAttendees = Split(sAttendees, ","

For lThisAttendee = 0 To UBound(asAttendees)
With oAppointment.Recipients.Add(asAttendees(lThisAttendee))
.Type = 1 '1 = Required, 2 = Optional
End With
Next
oAppointment.Recipients.Add (sAttendees)
'Send the appointment>
oAppointment.Send
Set olApp = Nothing
Set olNs = Nothing
Set oAppointment = Nothing
Set oOutlook = Nothing
Set oRecurrence = Nothing
End Function
Persistence....Nothing in the world can take the place of persistence. Talent will not; nothing is more common than unsuccessful men with talent. Genius will not; unrewarded genius is almost a proverb. Education will not; the world is full of educated derelicts. Persistence and determination alone are omnipotent. -Calvin Coolidge