| |||
Respuesta: Salto página Cita: Muchas gracias por la ayuda, he visitado san google, puesto que estaba hasta la ... pq ya no me salian pagina en la búsqueda que tuviesen relación decidi colocar la duda a ver si alguien conocia sobre el tema. La linea esta en concreto no me funciona:
Iniciado por pkj ![]() No tengo ni idea de trabajar con documentos Word, casi ni idea de Access y tu mensaje no lo llego a decodificar, pero, en fin, he googleado un rato y he encontrado esto en otro foro. Igual te sirve, y viendo que nadie te contesta pues ahi lo pongo. Pues con Microsoft Word referenciado en el proyecto copia y pega este ejemplo, que aquí es difícil de leer: Dim objWord As Word.Application Set objWord = New Word.Application 'Creo el objeto word objWord.Documents.Open "c:\hola.doc" 'Abro el documento objWord.Visible = True 'Pongo visible a word, se verá con el documento abierto. objWord.Selection.MoveDown wdLine, 3 'Bajo el cursor 3 lineas y se sitúa al inicio de la 4ª linea. objWord.Selection.InsertBreak Type:=wdPageBreak 'Meto el salto de página. Si te sirve, recuerda la próxima vez visitar primero a San Google. ![]() Saludos by PKJ "objWord.Selection.InsertBreak Type:=wdPageBreak 'Meto el salto de página. " Me da un error, no entiendo porque, puesto que tengo puesta la referencia a Microsoft office 11.0 object library que es la necesaria para trabajar con los word object. Siento que no entendieses mi pregunta. Voy a probar la linea anterior a la que he dicho anteriormente a ver si me funciona, esta linea: "objWord.Selection.MoveDown wdLine, 3 'Bajo el cursor 3 lineas y se sitúa al inicio de la 4ª linea. " Muchas gracias, ya te comento si funciona esta línea. |
| ||||
Respuesta: Salto página Posiblemente el error lo da el caracter dos puntos (:) antes del igual. Lo ví, pero no lo quité porque al no saber sobre el tema pensé que a lo mejor lo estropeaba. Prueba: objWord.Selection.InsertBreak Type=wdPageBreak o objWord.Selection.InsertBreakType=wdPageBreak Suerte. PD: Estoy mirando msdn http://msdn.microsoft.com/de-de/libr...ffice.11).aspx y no me entero de la mitad, pero yo probaría: objWord.Selection.InsertBreak wdPageBreak Valor y al toro que es una moná. PD2: Alguien de un foro dice que lo arregló con esto: ObjWord.Selection.InsertBreak() Y alguien le advirtió que tuviese cuidado y le aconsejo esto: Cuidado con el metodo [InsertBreak] ya que inserta saltos de pagina [ que no es lo mismo que un cambio de pagina ] y si tienes seleccionaldo algo del documento te lo reemplazara ![]() tambien del metodo [ collapse ] por ejemplo >> with objword.selection ..Collapse (wdCollapseEnd) ..insertbreak end with Espero que con todo esto ya no tengas problemas. Yo ya lo dejo. Saludos by PKJ. Última edición por pkj; 02/09/2009 a las 03:09 |
| |||
Respuesta: Salto página Cita: No creo que sea el caracter (:) porque en la misma aplicación tengo esta sentencia puesta:.Selection.TypeText Text:=" 1. Escrito numero 1" Y me funciona perfectamente, he probado la sentencia que venia sobre el salto de linea y me da error tb por error al pasar el parámetro error 4120 ..., es un coñazo. Estoy emulando esto mismo escribiendo líneas en blanco sin nada ... pero es muy chapucero y tedioso. Te pongo parte de mi código:
Código:
A través de recordset ataco a una base de datos para sacarle datos e introducirlos en el documento de word y llamao a la función de crear una tabla que es call. Dim objWord As Object Set oConexion = CurrentProject.Connection Dim MyRS As ADODB.Recordset With oConexion .Close ' Se cambia la cadena de conexión .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & sNombreBd & ";" .Open End With Set objWord = CreateObject("Word.Application") objWord.Visible = False Screen.MousePointer = vbHourglass With objWord .Documents.Add ' configuramos la página .ActiveDocument.PageSetup.LeftMargin = 70 .ActiveDocument.PageSetup.RightMargin = 70 .ActiveDocument.PageSetup.TopMargin = 30 .Selection.Font.Name = "Tahoma" .Selection.Font.Size = 16 Set MyRS = New ADODB.Recordset MyRS.Open "sentencia que ataca bd", oConexion, adOpenKeyset, adLockOptimistic .Selection.TypeParagraph ' Esta es la sentencia de llamada a la tabla Call .application.ActiveDocument.Tables.Add(objWord.ActiveWindow.Selection.Range, 2, 1) .ActiveDocument.Tables(1).Cell(1, 1).Select .ActiveDocument.Tables(1).Cell(1, 1).WordWrap = True .ActiveDocument.Tables(1).Cell(2, 1) = sTitulo End With Introduzco un texto despues de llamar a la tabla pero me escribe en la primera celda no entiendo porque. Luego intento crear otra tabla llamando de nuevo al call pero me trabaja con la tabla anterior que habia introducido antes. jejeje, disculpa si no me explico muy bien pero tampoco soy muy conocedor del tema. gracias |
| |||
Respuesta: Salto página Cita: Muchas gracias pkj, y que te sea leve en las otras tareas.Por si alguien busca en google y encuentra esto, yo he conseguido arreglar lo del salto de pagina de la siguiente forma. Dentro del bloque with donde trabajo con el documento de word se ponen estas sentencias ' Esta se supone que selecciona todo el código y te pone en la última línea donde hayas escrito .Selection.Collapse (wdCollapseEnd) ' Con esta sentencia se supone que te hace el salto de línea .Selection.insertbreak Última edición por DurinVii; 02/09/2009 a las 03:31 |