I guess it would depend on how the dates are arranged in your spreadsheet. Typically, I would just loop through and each olAppItem, something like this:
dim rngDates as excel.range
Dim olApp As Outlook.Application
Dim olAppItem As Outlook.AppointmentItem
dim arrDates as variant
dim intCol as integer
dim lngLastRow as long
dim lngRow as long
set rngdates = [A6]
intcol = rngdates.column
lnglastrow = rngdates.parent.columns(intcol).find(What:="*", _
After:=rngdates.parent.cells(1,intcol), _
SearchOrder:=xlbyrows, SearchDirection:=xlprevious, _
LookAt:=xlpart, LookIn:=xlvalues).row
arrdates = rngdates.resize(lnglastrow - rngdates.row + 1,2)
Set olApp = GetObject("", "Outlook.Application")
for lngrow = lbound(arrdates) to ubound(arrdates)
Set olAppItem = olApp.CreateItem(olAppointmentItem)
With olAppItem
.Start = arrdates(lngrow, 1)
.Subject = arrdates(lngrow, 2)
.Duration = 1
.ReminderSet = True
.Save
End With
next lngrow
set olappitem = nothing
set olapp = nothing
set rngdates = nothing
This allows you to set the starting cell and identifies the last used cell in the column, copies all the values into arrdates, then loops through arrdates to set up the reminders.