Saltar al contenido

Problema a la hora de insertar eliminar una fila desde una hoja distinta


Nodoka

Recommended Posts

publicado

Llevo desde ayer dándome calabonazos contra la pared tras tirarme un par de días implementando una nueva hoja en mi lista, tras ver que todo funciona en la hoja en cuestión bien y hace lo que quiero, reviso el código para que todas las llamadas sean  echas con sheets ("Nombre de la Hoja") y asi poder usar el userform desde cualquier hoja

el caso es es que para insertar una celda uso la instrucción que me proporcionasteis en otro post y siempre la inserto en al misma posición.

 

Sheets("Hoja Datos").Rows(4).Insert

luego me rellena con los datos que tengo en los txtbox y combobox en sus respectivas celdas y me reordene por orden alfabetico   a partir de la fila3 para abajo, y definido un rango de A3:A100 a un Com_Datos para ver esos datos qeu hay con la salvedad que me muestra todo las filas vacías

hasta ahi no hay problemas salvo porque me muestra un choro de filas vacías?

para eliminar lo mismo usando un bucle en el que le digo que empiece a contar desde la fila 3 que es donde se van ingresando los datos y me compare cada fila con el nombre que haya en el Com_Datos que se encuentra el nombre a eliminar de la fila completa

For Contador = 3 To Userform.Com_Datos.ListCount + 2
fila = Contador
If Cells(fila, 1).Value = Userform.Com_Datos.Text Then
Sheets("Hoja Datos").Rows(fila).Delete

hasta aqui funciona perfecto de este modo, me ingresa y me elimina filas sin problemas desde cualquier  hoja del libro.

El problema viene a que yo he creado una consulta desde una tabla cuyo rango he definido desde A2:A3 y diciéndole que contiene un nombre para que me muestre solo los datos que valla añadiendo luego al insertarlos desde un boton con el código de arriba puesto  en la filas A4 y le he asignado a esa consulta el nombre como Datos_Insertados y asi puedo asignarselo Com_Datos  y me muestre solo las filas con celdas con datos ingresados y así me evito qeu me salga en la lista las chorrocientas filas en blanco sin datos.

El caso es que estando en la hoja donde ingreso estos datos va todo perfectamente me crea la filas me la rellena y elimino la filas con el dato que yo quiera, ahora si si yo estoy en otra hoja llamo al userform y le doy a crear filas me las crea sin problemas pero si voy a eliminarlas se cuelga el excel y se cierra, tras crear una par de filas  desde otra hoja me vuelvo a la  hoja en cuestión donde se han insertado y veo que todas las filas que he añadido se encuentran seleccionadas cosa que no pasa creándolas estando es esa Hoja donde esta la tabla que voy rellenando.

He probado que tras insertar cada nueva fila ejecute este instrucción

 Sheets("Hoja Datoso").Cells(3.1).Select

para asi evitar que aparezcan seleccionadas esas filas que hacen que se cuelgue cuando recorre el bucle de búsqueda para eliminar la fila en cuestión, pero este dice que tu tia y no lo hace cuando voy a la hoja de Datos la filas siguen seleccionadas?

publicado

Joer después de escribir todo el tochaco este me he puesto de nuevo a revisar el codigo y em he dado cuenta que el problema estaba en el bucle del for que he puesto arriba no lo habia redireccionado a la hoja en cuestión?‍♀️

 If Sheets("Hoja Datos").Cells(fila, 1).Value = Userform.Com_Datos.Text Then

 

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.