Ayuda formulario para insertar fila a una tabla word con VBA

Iniciado por Happy01, 8 Febrero 2016, 17:23 PM

0 Miembros y 1 Visitante están viendo este tema.

Happy01

Hola.
Es la primera vez que entro y os mando un saludo. A ver si me pueden ayudar.

Tengo un formulario en el que se crea una tabla la cual quiero ir insertando filas según vaya necesitando mediante un botón de comando. Cuando relleno el formulario e intento insertar una fila me falla diciendo: "se ha producido un error '4605' en tiempo de ejecución: todo o parte del objeto no hace referencia a una tabla. Este método o propiedad no está disponible porque" al darle "Depurar" me sale en amarillo
CitarSelection.InsertRowsBelow 1
.
Si relleno el formulario y no le doy a insertar fila y me salgo del formulario y vuelvo a entrar sí me deja insertar fila sin problemas y cuantas desee. Así que yo creo que el problema es que si no ha creado la tabla físicamente no puede insertar filas. Necesito alguna idea para que pueda insertar filas sin salir del formulario ya que puedo seguir rellenando el siguiente.
Dejo los códigos que he metido en el botón de comando

CitarPrivate Sub CommandButton7_Click()
With Selection
Selection.EndKey Unit:=wdLine
Selection.MoveRight Unit:=wdCharacter, Count:=2
Selection.InsertRowsBelow 1
Selection.HomeKey Unit:=wdRow
Selection.EndKey Unit:=wdColumn
Selection.TypeText Text:=TextBox13.Text
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.TypeText Text:=TextBox14.Text
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.TypeText Text:=TextBox15.Text
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.TypeText Text:=TextBox16.Text
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.TypeText Text:=TextBox17.Text
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.TypeText Text:=TextBox18.Text
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.TypeText Text:=TextBox19.Text
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.TypeText Text:=TextBox20.Text
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.TypeText Text:=TextBox21.Text
TextBox13.Text = ""
TextBox14.Text = ""
TextBox15.Text = ""
TextBox16.Text = ""
TextBox17.Text = ""
TextBox18.Text = ""
TextBox19.Text = ""
TextBox20.Text = ""
TextBox21.Text = ""

End With
End Sub

Si fuera necesario algún dato más me dicen.
Un saludo

XresH

Hola, pasate los datos de tu form load o unload.
Si al cerrar y abrir el form te funciona correctamente por ahi debe andar tu solucion..

Saludos.
[ - Si eres programador y quieres que tus proyectos esten en mi blog(con o sin source), consúltame! - ]
Entra A Mi Blog De Programación | | Dudas en este post :| | >>Clic para ir al Post<<

Happy01

la solución fue crear otra userform para insertar fila a la tabla con la orden de cerrar la anterior que creaba la tabla. Entiendo que para crear filas en una tabla tiene que existir la tabla, de lo contrario no sabe dónde insertar filas.