Hace bastante tuve ese código, pero estaba en la versión anterior de los foros y se perdió...
El caso es que sólo funcionaba en Internet Explorer 6 y daba muchos problemas... por eso dejé de usuarlo. A menos que sea completamente imprescindible, mejor usa window.print() aunque no salga la vista previa... el usuario si quiere (y si su navegador lo soporta) ya pondrá él mismo la vista previa...
Quizá preguntando en el foro de Javascript puedan recomendarte algo.
Saludos