Guardar contenidos de celdas en otra hoja vba

Me surgió la idea de realizar una macro en excel creando un formulario en el editor de visual basic. Lo que pasa.. Es que ejecuto el formulario en la hoja1 y quiero guardar el contenido de los textbox en la hoja2 e ir almacenando¡.. Como se trata de un form.. De (clientes) los datos, que voy pidiendo en el formulario.
  Este Form posee 5 Textbox q son Numcliente, NomCliente, Direccion, Telefono, y Email. Los cuales los ordeno enla otra hoja (hoja2) por columnas en donde dice el titulo de cada uno..
Me gustaria q me orientraran de como es el codigo para ir recorriendo e ir almacenado.
1

1 Respuesta

2.080.890 pts. En mi sitio encontraran material de ayuda, ejemplos...
Si una vez abierto el Userform, la hoja activa es la 1, para mover el contenido de los controles a la hoja2 podes usar alguna de estas instrucciones de ejemplo:
Sheets("Hoja2"). Range("A5") = Textbox2 'lo mismo para los demás controles, ajustando referencias.
Otro modo, es obteniendo la primer fila libre para acomodar los datos:
libre = Sheets("Hoja2").Range("A65536").end(xlup).Row + 1
Sheets("Hoja2").Cells(libre,1) = Textbox2    'para col A
Sheets("Hoja2"). Cells(libre, 2) = Textbox3 'para col B y así siguiendo
Sdos
Elsa
*Te invito a visitar mi sitio donde encontrarás más información de Macros y Formularios
http://aplicaexcel.galeon.com/manuales.htm
Gracias.. Elsa.. me orientaste un poco.. Tengo otra consulta si no te molesta..¡
¿Esas lineas donde? Me conviene añadir en el propio TexBox1 o en el Botón GUARDAR que lo tengo en el Form. ¿Seria cuál de los dos es el que hace la diferencia?.. a eso quiero apuntar.Muchas gracias por tu tiempo.nos vemos
No, el pase se hace siempre en un botón del tipo ACEPTAR o GUARDAR. Así el usuario va llenando los campos y puede modificarlos antes de grabar todo el registro.
Entonces tendrás una rutina algo así:
Private Sub CommandButton1_click()
'botón de aceptar
libre = Sheets("Hoja2").Range("A65536").end(xlup).Row + 1
Sheets("Hoja2").Cells(libre,1) = Textbox2    'para col A
Sheets("Hoja2").Cells(libre,2) = Textbox3    'para col B y así siguiendo
'otros pases
End Sub
Gracias Elsa.. pr sacarme esa duda. Pero dicen que la Tercera es la vencida''¡
Así que Probé ese código en el botón GUARDAR que tengo en mi form pero no me resultó o sea no me almacenó los contenidos de cada Textbox coonsecutivos una vez que yo ingresaba desde el formulario a la hoja de excel.
. Yo creo que el problema está en que al.. ejecutar el Form en otra Hoja distinta ala que quiero guardar las celdas, ahí se cmplica el tema.Te pregunto..
¿QUÉ otro Código puedo probar o agregar para que me falte menos?.. Por ultima vez.
Gracias pr tu tiempo.Sdos
Ningún otro código. Lo correcto es como te lo indiqué. No importa en qué hoja esté el formulario ni en qué hoja quieras colocar los datos.
Lo importante es que le indiques en cada línea a qué hoja debe enviar la información de cada textbox, en mi ejemplo lo está enviando a la Hoja2.
No es necesario seleccionarla antes, justamente se usa así para no salirse de la hoja activa. Según tus comentarios tu hoja activa es Hoja1, y lo estás enviando a Hoja2 (verificá que estés escribiendo correctamente los nombres de hoja)
Sdos. Confírmame si resolviste y si no le encontrás la vuelta podes pedirme el ejemplo al correo que encontrarás en mi sitio (o enviame tu muestra)
A ok.. probé pero sigo sin que me almacene esos contenidos. Decidí mandarte mi ejemplo al correo de tu página.
Es re sencillo el código no sé por que no me funciona.Te adjunto a tu correo el ejemplo si puedes verlo te lo agradecería.Voy a seguir investigando lo que pueda ya que desde 4 semanas espezé con esto y no quiero abandonar. Gracias un saludo. ¡
TE lo acabo de enviar. No olvides finalizar la consulta cuando lo recibas.
Los nuevos temas (que aparecerán seguramente ;) en nuevas consultas por favor.
Sdos
Elsa
Muchísimas gracias Elsa.! Me demostraste que si se podía.. voy a tomar tu recado¡Y tratar de aplicar eso.Ns vemos Suerte.Te estaré consultando cualquier otra duda.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas