SlideRange is Not a "Stand alone" Collection. You can have "Application.SlideRange", "ActivePresntation.SlideRange", "Selection SlideRange", but not "SlideRange"

You can define your own Collection, that is standalone:
Dim MySlideRange as Collection
MySlideRange = Application.SlideRange
'Or
MySlideRange.Add Selection.Slides(1)
'then
Tmp = MySlideRange(i)

'I thimk you can make a  standalone by
Dim MySlideRange as SlideRange
'But I'm not sure
Aslo, I see you using the SlideRange as both a collection and as an Array (Used both Count and UBound)


Formatting in re Paul's code is really a must for all coders.

"Hyperlinks" is a PPT Keyword. Using it may cause Compiler confusion. I suggest changing it to "UsesHyperlinks."

"Hyperlinks" is a collection of URLs: "UsesHyperlinks" implies "yes/No" or "True/False", or even "Not Zero/Zero."