Allora perché hai scritto VB6 ?

VBA per Excel è simile ma non è affatto la stessa cosa.

Non puoi usare la Printer (quel codice era per VB6 ...) perché non esiste in VBA.

Forse in questa discussione

http://www.vbforums.com/showthread.php?t=595395

trovi una soluzione