The SlideiD should never change.
If the SlideIndex changes the iD takes preference and so the link will work even if the slide is moved to a new position.
You probably do not need to specify the title.
So, to create a link to the CURRENT slide 2
With oshp.ActionSettings(ppMouseClick)
.Action = ppActionHyperlink
.Hyperlink.SubAddress = CStr(ActivePresentation.Slides(2).SlideID) & ",2,Title"
End With
OR more generic
With oshp.ActionSettings(ppMouseClick)
.Action = ppActionHyperlink
.Hyperlink.SubAddress = CStr(ActivePresentation.Slides(2).SlideID) _
& "," & CStr(ActivePresentation.Slides(rs_AbsolutePosition + 1).SlideIndex) & ",Title "
End With