Variables en Macros Word
Publicado por leo nunez (2 intervenciones) el 10/08/2004 18:40:09
Hola,
Tengo el problema que al usar campos de tipo {DOCVARIABLE myVariable} y al setearlas por codigo VBA no se me actualizan en la presentacion preliminar del informe pero si al imprimir el documento Word. Mi pregunta es : Que atributo de los objetos de word debo setear para que se me actualizen los valores del informe al realizar una presentacion preliminar y no al imprimirse. (Ya que esta opcion se marca dentro de las preferencias del word.)
Cualquier ayuda Muchas Gracias!
Public Sub Informe(ByVal Hoja As String)
Dim objWord As Object
Dim objDoc As Object
Dim k As Integer
Set objWord = CreateObject("Word.Application.9")
objWord.Visible = False
objWord.Documents.Open Worksheets(Hoja).Cells(518, 1).Text
Set objDoc = objWord.Documents(1)
'aqui elimino las variables del documento
For k = objDoc.Variables.Count To 1 Step -1
objDoc.Variables.Item(k).Delete
Next k
objWord.ScreenUpdating = False
'aqui agrego variables y valores desde una planilla excel.
With objDoc
.Variables.Add "Encabezado", Worksheets("proyec_saldo").Cells(2, 12)
.Variables.Add "Rut", Worksheets("proyec_saldo").Cells(3, 12)
.Variables.Add "Edad", Worksheets("proyec_saldo").Cells(8, 5)
.Variables.Add "EstadoCivil", Worksheets("proyec_saldo").Cells(4, 12)
.Variables.Add "Conyuge", Worksheets("proyec_saldo").Cells(5, 12)
.Variables.Add "NumeroDeHijos", Worksheets("proyec_saldo").Cells(6, 12)
End With
If objWord.PrintPreview = False Then
objDoc.PrintPreview
End If
objWord.ScreenUpdating = True
objDoc.Save
objWord.Visible = True
Set objWord = Nothing
End Sub
Tengo el problema que al usar campos de tipo {DOCVARIABLE myVariable} y al setearlas por codigo VBA no se me actualizan en la presentacion preliminar del informe pero si al imprimir el documento Word. Mi pregunta es : Que atributo de los objetos de word debo setear para que se me actualizen los valores del informe al realizar una presentacion preliminar y no al imprimirse. (Ya que esta opcion se marca dentro de las preferencias del word.)
Cualquier ayuda Muchas Gracias!
Public Sub Informe(ByVal Hoja As String)
Dim objWord As Object
Dim objDoc As Object
Dim k As Integer
Set objWord = CreateObject("Word.Application.9")
objWord.Visible = False
objWord.Documents.Open Worksheets(Hoja).Cells(518, 1).Text
Set objDoc = objWord.Documents(1)
'aqui elimino las variables del documento
For k = objDoc.Variables.Count To 1 Step -1
objDoc.Variables.Item(k).Delete
Next k
objWord.ScreenUpdating = False
'aqui agrego variables y valores desde una planilla excel.
With objDoc
.Variables.Add "Encabezado", Worksheets("proyec_saldo").Cells(2, 12)
.Variables.Add "Rut", Worksheets("proyec_saldo").Cells(3, 12)
.Variables.Add "Edad", Worksheets("proyec_saldo").Cells(8, 5)
.Variables.Add "EstadoCivil", Worksheets("proyec_saldo").Cells(4, 12)
.Variables.Add "Conyuge", Worksheets("proyec_saldo").Cells(5, 12)
.Variables.Add "NumeroDeHijos", Worksheets("proyec_saldo").Cells(6, 12)
End With
If objWord.PrintPreview = False Then
objDoc.PrintPreview
End If
objWord.ScreenUpdating = True
objDoc.Save
objWord.Visible = True
Set objWord = Nothing
End Sub
Valora esta pregunta


0