Ayuda con Excel y VB

Hola Experto
Espero que me puedas ayudar ya que tiene algo de urgencia...
Resulta que cree una aplicación en Excel con Visual Basic, esta aplicación tiene 4 pestañas, cada una de las cuales contiene un formulario para ingresar información en hojas diferentes de Excel...
La Cuestión es... Y te doy un ejemplo.
La primera pestaña se llama biblioteca y es igual a la primera hoja del libro de excel que también se llama biblioteca,
La segunda pestaña se llama gestión al igual que la segunda hoja del libro y así sucesivamente.
Entonces al ingresar información en cualquiera de los formularios siempre me los guarda en la primera hoja, es decir en biblioteca y no se como hacer para que al darle click en la pestaña gestión me guarde los datos en la hoja gestión.
Si quiere le puedo enviar el archivo para que lo entienda mejor.
Espero que me pueda ayudar.
Mil gracias por adelantado
Gabo Duque!

1 Respuesta

Respuesta
1
Supongo que la información la introduces dentro del form en controles, tales como Textbox. Para dirigir el valor introducido en estos controles en las hojas de tu libro debes hacer:
Sheets("Hoja1").Cells(1,1).value = TextBox1.Value
También puedes usar índice para referirte a las hojas, es decir:
Sheets(1). Cells(...
Ok, pero según eso vi que indica la celda, por casualidad sabes como en ese mismo código ubicar la siguiente celda libre, es decir si A3 y A4 tienen datos, que se "pare" por así decirlo en la celda A5 para ingresar los siguientes datos.
Que pena la insistencia y mil gracias!
Una forma fácil, aunque lenta si hay muchos datos, es recorrer toda la columna buscando una celda sin contenido, es decir libre. Esto se hace mediante un bucle for next si sabes de antemano el tamaño de la matriz de datos, o más correctamente con un bucle wile wend. Por ejemplo:
dim fila as integer
while cells(fila, 1).value<>""
  fila= fila+1
Wend
El valor de la primera fila vacía se almacenará en la variable fila.
Pruébalo y me comentas.
Hola de nuevo experto...
Probando el código me genera un error en el WHILE... mira el código de uno de los textbox y me dices si tal vez lo ingreso mal-
Private Sub TextBox1_Change()
Sheets("Adm_Aprendizaje").Activate
-----> AQUI INGRESARÍA EL COD Y LA LINEA QUE SIGUE LA ELIMINO <------
Range("A4").Select
ActiveCell.FormulaR1C1 = "DGHO-UAO-AAO-" + TextBox1
Do While ActiveCell <> Empty
ActiveCell.FormulaR1C1 = UCase(ActiveCell)
ActiveCell.Offset(1, 0).Select
Loop
End Sub
Gracias en lo que de nuevo me puedas ayudar
En la fila 5 debería decir: ... + TextBox1.Text para añadir al literal que le precede el valor actual del textbox.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas