I guess you are providing them with a button on each slide linked to this macro so that when in the slideshow, they can click a button and print the page that they are on?
If so, then the problem is that the current slide refers to teh slide that you are on outside the slideshow so wherever you are in the slide show, current slide remains the same.
The code that I think you need instead print a slide range and the range is determined by the slide that you are on in the slideshow
' Macro recorded 15/11/2004 by Andrew Cherriman
.RangeType = ppPrintSlideRange
.Add Start:=SlideShowWindows(Index:=1).View.Slide.SlideIndex, End:=SlideShowWindows(Index:=1).View.Slide.SlideIndex
.NumberOfCopies = 1
.Collate = msoTrue
.OutputType = ppPrintOutputSlides
.PrintHiddenSlides = msoTrue
.PrintColorType = ppPrintBlackAndWhite
.FitToPage = msoFalse
.FrameSlides = msoFalse
.ActivePrinter = "HP LaserJet 5M"
Hope this helps, sorry about the (probably) wierd formatting