Programación General > VBA
Plantilla Word-vb6
(1/1)
Widark:
Hola.
Necesito crear una plantilla en word, es una especie de certificado y desde vb 6, enviarle algunos datos, pero que cuadre donde debe de ir, me explico:
'Plantilla
Direccion
Ciudad
Chachara, Chachara, Chachara, Chachara, Chachara <Aqui va el nombre de la persona> sigue la chachara... <aqui va la fecha> chachara y mas chachara.
Por su colaboracion muchas gracias.
Shiquilla:
Te creas una plantilla con marcadores en WORD poníendole marcadores donde los necesites.
Para escribir en esos marcadores:
--- Código: Text ---Option Explicit Private Sub Form_Load() Dim Word As ObjectDim Documento As ObjectDim Path As StringDim Archivo As StringDim Existe As String Screen.MousePointer = vbHourglass Path = App.Path & "\Informes\" Archivo = "Plantilla.dot" Existe = Dir(Path & Archivo) If Trim(Existe) <> "" Then Set Word = CreateObject("Word.Application") Set Documento = Word.Documents.Add(Path & Archivo, , , False) Documento.Activate With Documento.Application If IrAMarcador("[MARCADOR]", Documento) Then .Selection.TypeText Text:="EL TEXTO QUE QUIERO" End With Word.Visible = True Word.Windows(Word.ActiveWindow).Caption = "Prueba Marcadores" Documento.Activate Else MsgBox "No se encontró la plantilla de WORD", vbCritical, "Word" End If Screen.MousePointer = vbDefault Set Documento = Nothing Set Word = NothingEnd Sub Public Function ExisteMarcador(Marcador As String, Documento As Object) As Boolean Dim TextoDoc As Object With Documento Set TextoDoc = Documento.Content TextoDoc.Find.Execute FindText:=Marcador, Forward:=True ExisteMarcador = (TextoDoc.Find.Found = True) End With End Function Public Function IrAMarcador(Marcador As String, ByVal Documento As Object) As Boolean If ExisteMarcador(Marcador, Documento) Then With Documento.Application .Selection.Find.ClearFormatting With .Selection.Find .Text = Marcador .Replacement.Text = "" .Forward = True .Wrap = 1 .Format = True .MatchCase = False .MatchWholeWord = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With .Selection.Find.Execute .Selection.TypeText Text:="" IrAMarcador = True End With Else IrAMarcador = False End If End Function
Adjunto la plantilla de word por si la necesitas.
Nota: Para poder modificar una plantilla de WORD pincha con el botón derecho y dale a Abrir, si lo abres haciendo doble click y la modificas no te deja guardarlo en .dot (como plantilla) sino como documento normal.
Saludos,
Érika
Widark:
Hola Erika.
Muchas gracias por su ayuda, me funciono muy bien, solo es cuestion de arreglarlo a mis necesidades, pero es una gran ayuda, cualquier avance le informare, muchas gracias.
Saludos
Navegación
Ir a la versión completa