border

Miembros:
Mensajes:
Temas:
Online:

Ultimo Miembro:

 
 

Cuenta Bancaria en EEUU
  #11 (permalink)  
Antiguo 30-11-2003, 00:00:00
Un Nuevo Amigo
 
Registrado: mar 2004
Posts: 14
xsara1_9 Valoración +2
Predeterminado RE: Problema para mover el cursor

RE: Problema para mover el cursor

Todavía no me funciona. Lo que me aportas es lo que genera la macro y lo pongo en mi aplicación con mi variable Object pero no funciona.
Si pongo exactamente lo que dices:
oWord.ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=15, NumColumns:=2, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:=wdAutoFitFixed
para que me cree la tabla me da un error que dice:
Error "91" en tiempo de ejecución
Variable de tipo Object o la variable de bloque With no está establecida.
En cambio si uso para crear la tabla, lo siguiente, me la crea bien.
oWord.Documents.Item(1).Tables.Add oWord.Application.Selection.Range, 15, 4

Aquí mando el código tal cual por si te es más fácil dar con el fallo:
Private Sub CrearInforme()
Dim oWord As Object
Dim oDoc As Object
Dim r1 As Variant
Dim strSql As String
Dim sumap1, sumaf1, sumapf1, T, i As Integer

Set oWord = CreateObject("Word.Application"
Set oDoc = oWord.Documents.Open(PathDatos + "Calendarios.doc"

T = 1
MostrarRecCal Este procedimiento busca los recursos
r1 = CambioTexto(oWord, " ", "<<Calendarios>>" Situo el cursor
If Not rsTemporal9.EOF Then
rsTemporal9.MoveFirst
While Not rsTemporal9.EOF Para cada recurso crea una tabla
sumap1 = 0
oWord.Documents.Item(1).Tables.Add oWord.Application.Selection.Range, 15, 4
oWord.Documents.Item(1).Tables(T).Cell(1, 1).Range.Text = rsTemporal9!Recurso
oWord.Documents.Item(1).Tables(T).Cell(2, 2).Range.Text = "PÉ"
oWord.Documents.Item(1).Tables(T).Cell(2, 3).Range.Text = "FLOTE"
oWord.Documents.Item(1).Tables(T).Cell(2, 4).Range.Text = "PÉ/FLOTE"
oWord.Documents.Item(1).Tables(T).Cell(3, 1).Range.Text = "ENERO"
oWord.Documents.Item(1).Tables(T).Cell(4, 1).Range.Text = "FEBRERO"
oWord.Documents.Item(1).Tables(T).Cell(5, 1).Range.Text = "MARZO"
oWord.Documents.Item(1).Tables(T).Cell(6, 1).Range.Text = "ABRIL"
oWord.Documents.Item(1).Tables(T).Cell(7, 1).Range.Text = "MAIO"
oWord.Documents.Item(1).Tables(T).Cell(8, 1).Range.Text = "XUÑO"
oWord.Documents.Item(1).Tables(T).Cell(9, 1).Range.Text = "XULIO"
oWord.Documents.Item(1).Tables(T).Cell(10, 1).Range.Text = "AGOSTO"
oWord.Documents.Item(1).Tables(T).Cell(11, 1).Range.Text = "SEPTEMBRO"
oWord.Documents.Item(1).Tables(T).Cell(12, 1).Range.Text = "OUTUBRO"
oWord.Documents.Item(1).Tables(T).Cell(13, 1).Range.Text = "NOVEMBRO"
oWord.Documents.Item(1).Tables(T).Cell(14, 1).Range.Text = "DECEMBRO"
oWord.Documents.Item(1).Tables(T).Cell(15, 1).Range.Text = "TOTAL"
MostrarCalendario Recuperas los valores para ese recurso
If Not rsTemporal8.EOF Then
rsTemporal8.MoveFirst
For i = 3 To 14
oWord.Documents.Item(1).Tables(T).Cell(i, 3).Range.Text = rsTemporal8!Xornadas_Previstas
sumap1 = sumap1 + rsTemporal8!Xornadas_Previstas
rsTemporal8.MoveNext
Next
End If
oWord.Documents.Item(1).Tables(T).Cell(15, 3).Range.Text = sumap1
rsTemporal8.Close
rsTemporal9.MoveNext

T = T + 1

oWord.Selection.MoveDown Unit:=wdLine, Count:=15 **
oWord.Selection.TypeParagraph
oWord.Selection.TypeParagraph

Wend
End If
rsTemporal9.Close

oWord.Application.Visible = True

Set oDoc = Nothing
Set oWord = Nothing
End Sub

** Pues bien no consigo que me obedezca esta línea, entonces como no sale de la primera tabla cuando le mando construir la segunda lo que me hace es añadir filas a la primera tabla y entonces me da el error.

Muchas gracias</TR>
Responder Con Cita
  #12 (permalink)  
Antiguo 17-09-2004, 01:00:00
Avatar de J.M.Movilla
Administrador
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.490
J.M.Movilla Valoración +2
Predeterminado RE: Problema para mover el cursor

RE: Problema para mover el cursor

Es una pena que no se puedan adjuntar ficheros... porque te asombraría cómo tu propio código me hace tres tablas en cada página, aunque en las celdas tengo que introducir números aleatorios por no disponer de tu base de datos...)

Voy a darte un consejo (de esos "que vendo y que para mí no tengo"...)

Detrás de

Set oDoc = oWord.Documents.Open(PathDatos + "Calendarios.doc")

pon (provisionalmente) la línea

oWord.Application.Visible = True

y pulsa F9 sobre esta nueva línea. Luego ejecuta tu aplicación línea a línea, con F8, y ve alternando el visionar la evolución de la ejecución del código y del resultado en Word... A ver donde te falla... Porque a mí me lo hace estupensamente... Verás cómo en cuando termina de construir una tabla, con

oWord.Selection.MoveDown Unit:=wdLine, Count:=15 **
oWord.Selection.TypeParagraph
oWord.Selection.TypeParagraph

sale perfectamente de ella y empieza a escribir la nueva tabla en el documento, no dentro de la tabla anterior...
__________________
José María Movilla Cuadrado
______________________
www.foro.vb-mundo.com
www.vb-mundo.com

Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último Mensaje
Como Manejo drag and drop para mover un picturebox jesus leon reyes Visual Basic.NET 2003 & 2005 0 27-09-2007 19:06:21
Coordenadas del cursor slarian Visual Basic.NET 2003 & 2005 0 11-11-2006 16:58:13
evento mouseMove para que no se pueda mover una ventana alemagadan JAVA (General) 1 06-11-2006 23:04:02
Cambiar el Cursor Para Todo Windows spider_Ramon Visual Basic.NET 2003 & 2005 0 14-04-2005 14:10:29
Cursor angelomfia Visual Basic 6.00 1 17-09-2004 01:00:00


La franja horaria es GMT. Ahora son las 06:48:33.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
A vBSkinworks Design

Alojado en el servicio Premium de Masquewebs | Diseño mejorado por MasqueWebs

right