RE:Como imprimo un archivo de Word desde Visual
Puedes utilizar la función ShellExecute. Añade las siguientes declaraciones en un módulo:
Public Const SW_SHOWNORMAL = 1
Public Const SW_SHOWMINIMIZED = 2
Public Const SW_SHOWMAXIMIZED = 3
Public Const SW_SHOWNOACTIVATE = 4
Public Const SW_SHOW = 5
Public Const SW_MINIMIZE = 6
Public Const SW_SHOWMINNOACTIVE = 7
Public Const SW_SHOWNA = 8
Public Const SW_RESTORE = 9
Public Const SW_SHOWDEFAULT = 10
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowcmd As Long) As Long
Para imprimir, utiliza entonces una llamada como la siguiente:
ShellExecute 0&, "print", "C:\ruta\fichero.doc", "", "", SW_SHOWMINNOACTIVE