Ik wil graag uit een kolom data inlezen die dan in outlook agenda gezet worden.
Dit gaat totdat er een regel komt, waar geen datum in staat... Dat stop de macro.
Is zoiets "simpel" toe te voegen?
Eventueel met een controle of de datum niet in het verleden ligt en deze dan dus ook overslaat?
Het betreft projecten in een sheet waarbij sommige een vervolgdatum krijgen en andere dus niet.
Alle hulp is welkom!
Dit gaat totdat er een regel komt, waar geen datum in staat... Dat stop de macro.
Is zoiets "simpel" toe te voegen?
Eventueel met een controle of de datum niet in het verleden ligt en deze dan dus ook overslaat?
Het betreft projecten in een sheet waarbij sommige een vervolgdatum krijgen en andere dus niet.
Alle hulp is welkom!
Code:
Option Explicit
Public Sub CreateOutlookAppointments()
On Error GoTo Err_Execute
Dim olApp As Outlook.Application
Dim olAppt As Outlook.AppointmentItem
Dim blnCreated As Boolean
Dim olNs As Outlook.Namespace
Dim CalFolder As Outlook.MAPIFolder
Dim i As Long
On Error Resume Next
Set olApp = Outlook.Application
If olApp Is Nothing Then
Set olApp = Outlook.Application
blnCreated = True
Err.Clear
Else
blnCreated = False
End If
On Error GoTo 0
Set olNs = olApp.GetNamespace("MAPI")
Set CalFolder = olNs.GetDefaultFolder(olFolderCalendar)
i = 4
Do Until Trim(Cells(i, 1).Value) = ""
Set olAppt = CalFolder.Items.Add(olAppointmentItem)
With olAppt
.Start = Cells(i, 20) '+ TimeValue("10:00:00")
.Subject = Cells(i, 10)
.Location = Cells(i, 13)
.Body = Cells(i, 3)
.BusyStatus = olBusy
.ReminderMinutesBeforeStart = 30
.ReminderSet = True
.Save
End With
i = i + 1
Loop
MsgBox "Reminder aangemaakt in Outlook agenda...", vbMsgBoxSetForeground
olNs.Logoff
Set olAppt = Nothing
Set olApp = Nothing
Exit Sub
Err_Execute:
MsgBox "An error occurred."
End Sub