yes, you can modify the Scheduler via VBA. Please also see the VBA help for more information. Here you can find a small example:
Sub sched_change()
Dim myPfsGroup As PfsGroup
' Group 0 is the schedule of the Scheduler
Set myPfsGroup = thisProject.Pfs.Groups.Item(0)
If (Not myPfsGroup Is Nothing) Then
Dim mySchedItem As PfsSchedule
'Schedule item 0
Set mySchedItem = myPfsGroup.Schedules.Item(0)
End If
If Not (mySchedItem Is Nothing) Then
Dim mySched As PfsSchedule
'Scheduler Item 0 is the day for Monday in the schedule
Set mySched = mySchedItem.Schedules.Item(0)
End If
If (Not mySched Is Nothing) Then
Dim mySchedTimeOn As PfsScheduleTime
'in this case (Switch On / Switch Off), item 0 is the start time for the first time
Set mySchedTimeOn = mySched.ScheduleTimes.Item(0)
Debug.Print mySchedTimeOn.Time
mySchedTimeOn.Time = "01.01.1970 09:20:00"
Debug.Print mySchedTimeOn.Time
Dim mySchedTimeOff As PfsScheduleTime
'in this case (Switch On / Switch Off), item 0 is the end time for the first time
Set mySchedTimeOff = mySched.ScheduleTimes.Item(1)
Debug.Print mySchedTimeOff.Time
mySchedTimeOff.Time = "01.01.1970 09:22:00"
Debug.Print mySchedTimeOff.Time
End If
thisProject.Pfs.Save
End Sub