That's odd. I inspected:
(setq noc (vla-put-NumberOfCopies (vla-get-Plot (vla-get-ActiveDocument (vlax-get-acad-object))) 3))
with a result of nil, then inspected:
(vla-get-numberofcopies (vla-get-Plot (vla-get-ActiveDocument (vlax-get-acad-object))))
with a return value of 3. If you just inspect the (vla-get-plot (...)), you should see a <NumberOfCopies> 3 in the inpection popup in the vlide. Maybe I'm just not understanding what's being asked here, but it seems retained to me. Using 2006 plain. What all that really tells me, is you don't even need to setq varname this one.