Saludos. Como puedo crear un documento de word en vb.net y copiar todo un texto de otro documento

Tengo un botón que copia un documento de word con marcadores a un ruta especifica y que reemplaza dichos marcadores con variables con información de una bd. Funciona bien, pero quisiera crear un documento nuevo (de word) y copiarle el formato del otro documento con los marcadores (no se si m explico). Para que al final el usuario decida el nombre del doc y donde guardarlo con Guardar como.

este es el código

variables_bd() 'Procedimiento para Guardar en variables información de BD Access con un DataTable e intercambiar por los marcadores
If Not Directory.Exists(ruta + "\Contratos Generados") Then
Directory.CreateDirectory(ruta + "\Contratos Generados")
MsgBox("Carpeta Creada", MsgBoxStyle.Information)
End If
Dim MSWord As New Word.Application
Dim Documento As Word.Document
FileCopy(ruta + "\Formatos\Contrato Normal.docx", ruta + "\Contratos Generados\Documento 1.docx")
Documento = MSWord.Documents.Open(ruta + "\Contratos Generados\Documento 1.docx")
Documento.Bookmarks.Item("nombres").Range.Text = nombres
Documento.Bookmarks.Item("apellidos").Range.Text = apellidos
Documento.Bookmarks.Item("nacionalidad").Range.Text = nacionalidad
Documento.Bookmarks.Item("dirección").Range.Text = dirección
Documento.Bookmarks.Item("cedula").Range.Text = cedula
Documento.Bookmarks.Item("dias_letra").Range.Text = dia_letra
Documento.Bookmarks.Item("dias_numero").Range.Text = día
Documento.Bookmarks.Item("mes_letra").Range.Text = mes_M
Documento.Bookmarks.Item("año_letra").Range.Text = anio_letra
Documento.Bookmarks.Item("año_numero").Range.Text = anio
Documento.SaveAs()
MSWord.WindowState = WdWindowState.wdWindowStateMaximize
MSWord.Visible = True

como ya mencione el código funciona pero, no como m gustaría. Agradecería enormemente su colaboración. Gracias

1 respuesta

Respuesta

¿Lo qué deseas es crear uno nuevo y copiar los bookmarks de uno que los tenga verdad?

Si es así, lo único que tienes que hacer es cambiar el método al que llamas (Open) y colocar el SaveAs con la ruta y nombre deseado. Claro luego tendrás que copiar los bookmarks con lo que tienes listo.

Dim word As Microsoft.Office.Interop.Word.Document = New Microsoft.Office.Interop.Word.Document
word.SaveAs("C:\DATOS\D\dddd\prueba.docx")

Cualquier duda avisame y recuerda puntuar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas