I have to ask: Why are you opening the recordset with a static cursor??? You then only move forward through the recordset so you are wasting the performance expense of the cursor.
And why do you use
if objRs.BOF then
Elseif objRs.BOF then
(Not a big deal, but expresses what you are doing better.)
And by the by: You write out mnheader and overlayPH and more even when you have an error or you find no records (so there isn't really any slideshow). Is that intentional?