Ok allora devo arrendermi a word per ora (più avanti magari cambierò il modulo e scriverò il mio RTF ma ora non ho tempo).

Solo una cosa: Mi dite come fare a renderlo "universale" con tutte le versioni?

Io ho aggiunto il riferimento alla libreria word 12 (che credo sia 2007) e anche se ho il 2003 mi funziona ugualmente!

questo è il codice (l'ho molto snellito togliendo varie connessioni, var ecc così vedete l'interazione con word:

codice:
'creo i file word
        Dim oWord As Word.Application = CreateObject("Word.Application")
        Dim oDoc As Word.Document[/B][/COLOR]
             Dim nomeModelloWord As String = "assPartTime.doc"
       Try
            'Copio il modello nella directory scelta
                IO.File.Copy(appPath & "\formulario\" & nomeModelloWord, urlFile, True)
                'apro word
                oWord.Visible = True
                oDoc = oWord.Documents.Open(urlFile)
                oWord.Activate()
                For Each segnalibro As Word.Bookmark In oDoc.Bookmarks
                    Dim nomeCampoDB As String = Strings.Left(segnalibro.Name, segnalibro.Name.Length - 3)
                    Dim testo As String = rigaQry(nomeCampoDB).ToString
                    segnalibro.Range.InsertAfter(testo)
                Next
                oDoc.Save()
                oDoc.Close()
                'Chiusura Applicazione Word
                oWord.Quit()
                MsgBox("Lettera d'assunzione creata!", MsgBoxStyle.Information, "Creazione Lettera Assunzione")
            End If
        Catch ex As Exception
            MsgBox(ex.Message, MsgBoxStyle.Critical, "Errore in " & ex.Source)
            oDoc.Close()
            'Chiusura Applicazione Word
            oWord.Quit()
            'elimino il file se esiste
            If IO.File.Exists(urlFile) = True Then
                IO.File.Delete(urlFile)
            End If
        End Try