Antoni, quiero pedirte que del evento Initialize del form frmProd, le elimines la linea Call BuscaCambio y la pegues en el evento Private Sub cboHojas_Change()
Porque me estaba dando error al editar o ingresar nuevo
Para diferenciar escribo mayúsculas, no tomen a mal
1º- Primero: tienes siete tipos de hoja diferentes: = SI, 7 HOJAS EN EL LIBRO, cada una con su propósito pero el mismo fin, almacenar artículos
2º- ¿El mismo formulario escribe en todas o varias de las hojas? = SI, UNA A LA VES, MENOS EN LAS ENTRADA Y SALIDA. Si necesito ingresar o editar en X hoja desde la hoja Inicio, abro el form y por vía del desplegable selecciono la hoja para trabajar en ella
3º- ¿Hay un formulario para cada hoja? NO. ANES LO QUE HACIA ERA DEPENDIENDO DE LA HOJA QUE QUERIA TRABAJAR, IBA AL CODIGO Y LE CAMBIABA EL NOMBRE DE HOJA, EJ.: "PRODUCTOS" A "JOHM DEERE"y asi hacia, por eso tenia un boton en cada hoja para el mismo form
Hablaba de CLIENTE porque por el nombre del evento deduzco “botón Nuevo Cliente” pero es igual dejémoslo en genérico y digamos un registro.
Tienes razón Antoni, es que el form y casi, casi todo el código, salvo algunas correcciones, lo extraje de otra plantilla y los botones ya tenían (tienen) esos nombres
4º- Cuando añades dices que lo haces en la hoja activa ¿Cómo te aseguras que la hoja activa es la que debe ser?
¿Qué hace que grabes en PRODUCTOS y no en ENTRADA o en CAT? Creo que la respuesta a esta pregunta es la solución a parte del problema. Veamos porque:
Al seleccionar la hoja en el desplegable, va directo a dicha hoja y se carga el List con los datos de esa hoja y ahí trabajas
Por eso mencione ayer lo de crear una tabla con los nombres de las hojas en la hoja Inicio (A1 hacia abajo, variable para que cada ves que se agregue un nombre nuevo de hoja, esta sea cargada en el combo al abrir el form. Así en el combo selecciono la Silverado o la CAT-2 o la CAT-5 o la Productos-1 o la Silverado-10 a la que seleccione es la que se activa (.Select) para trabajar
5º- Si en el momento de grabar el registro, es decir cuando entra en cbtNueClie sabe que la hoja donde ha de guardar es la CAT, lo primero que hace es buscar la última hoja de CAT, en este caso sería CAT-2, mira si la celda A2500 = TENDRIAS O TENDRÁ QUE HACERLO
SI hay datos, Crea CAT-3 (y se podría rellenar la línea 1) y graba en la línea 2. NO hay datos Realiza la búsqueda de la primera línea libre. = CIERTO
6º- Pensabas que era fácil, pues NO. Veo este trozo de código: = CIERTO LO QUE MENCIONAS SOBRE ESE PUNTO Si eres detallista Antoni. Hay que tener AÑOS en ese menester para tanto detalle.
7º- Otro detalle, ¿Cómo se hace para añadir CAT-3 y quede así?
7aº- Siempre hay que seleccionar la siguiente hoja para añadir (opción 2), excepto la hoja SALIDA que se añade al final (opción 1). =
LA HOJA ENTRADA Y SALIDA, SON DE OTRO FORMULARIO. LAS METI AHÍ, PERO PUEDES QUITARLAS.
Este formulario frmEntraSale es para dar entrada o salida según el caso, ya tiene su buscador por si quiero imprimir los resultados
8º- ¿Por qué limitas 2500 líneas en la hoja cuando en una misma hoja tienes 1.048.576 líneas lo equivalente a 419 hojas de 2500 líneas? = PODRIAN SER 10.000 PERO SE VOLVERÁ MAS Y MAS PESADO EL LIBRO SU EJECUCION Y POR CONSECUENCIA, EL DESAROLLO (ejecución) DE LA(s) MACROS. Además, no son tantos artículos, así como para tener 10 hojas de cada tipo, es una plantilla para mi uso (DOMESTICA) aquí para que tenga ubicado cada artículo, no son muchos, pero aun si algo y cuando necesite alguno, (como ha sucedido) no ande pariendo en su búsqueda y hasta llegar a no encontrarlo (como ha sucedido)
Sobre esta 8º- quisiera tu opinion.