Te anexo la macro actualizada:
Declare Function SetTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal _
lpTimerFunc As Long) As Long
Declare Function KillTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long) As Long
Dim lngTimerID As Long
Dim n As Integer
'
Sub Iniciar()
'Referencia: https://social.msdn.microsoft.com/Forums/en-US/9f6891f2-d0c4-47a6-b63f-48405aae4022/powerpoint-run-macro-on-timer?forum=isvvba
'Por.Dante Amor
n = 0
lngTimerID = SetTimer(0, 0, 300000, AddressOf Guardar)
End Sub
'
Sub Guardar()
'Por.Dante Amor
ubicaciones = Array("c:\trabajo\varios\", "C:\trabajo\diario\", "C:\trabajo\ejemplo\")
ruta = ubicaciones(n)
Application.ActivePresentation.SaveCopyAs ruta & "respaldo"
n = n + 1
If n > UBound(ubicaciones) Then n = 0
MsgBox "Guardado"
End Sub
'
Sub Detener()
'Por.Dante Amor
lngTimerID = KillTimer(0, lngTimerID)
End Sub
Sub HelloTimer()
MsgBox "Hello Timer : " & Now
End Sub
Guarda en la primera ubicación, a los 30 minutos guarda en la segunda ubicación, y así con todas las ubicaciones que pongas en este arreglo:
ubicaciones = Array("c:\trabajo\varios\", "C:\trabajo\diario\", "C:\trabajo\ejemplo\")