¿Cómo paso información de un userform a una hoja de excel desde un commandbutton en vba?

Estoy intentando que los datos que ingreso a un listbox y textbox queden registrados en una hoja de excel al dar clic en un commandbutton, pero no he logrado dar con el código correcto, adicional me gustaría que al darle click a ese botón se limpien los datos ingresados en el userform

5 estrellas!

1 Respuesta

Respuesta
2

Este es un ejemplo para pasar controles textbox a una hoja. Algunos son campos numéricos, otros de fecha y algunos se pasan en mayúsc, como para que veas las distintas opciones.

Sub guardar()
'x Elsamatilde
'ejemplo de instrucciones para el pase de textbox en UF a hoja Clientes
Set hoc = Sheets("BaseClie")
'encuentra la primera fila vacía según col A
filx = hoc.Range("A" & Rows.Count).End(xlUp).Row + 1
'pase de cada control a las distintas columnas de la fila libre
hoc.Cells(filx, 1).Value = Val(TextBox1)    'valor numérico
hoc.Cells(filx, 2).Value = UCase(TextBox2)  'nbre en mayúsc
hoc.Cells(filx, 3).Value = TextBox7         'dni
hoc.Cells(filx, 4).Value = UCase(TextBox3)  'direc en mayúsc
hoc.Cells(filx, 5).Value = CDate(fechi)     'campo fecha
MsgBox "Registro guardado en base de CLIENTES.", , "FIN"
End Sub

Para limpiar a continuación estos controles podés agregar antes del End Sub el siguiente bucle:

For Each tx In Me.Controls
    If TypeName(tx) = "TextBox" Then tx.Value = ""
Next

Lo que no me quedó claro es si además necesitas las instrucciones para el pase de todo un listbox o solo de un elemento seleccionado en un listbox. Aclara un poquito esta parte de la consulta.

Te recuerdo que la consulta sigue como 'pendiente'. ¿Hay algo que no comprendiste? ¿Necesitas más aclaraciones?

Si todo está resuelto no olvides valorarla para darla por cerrada.

Sdos!

¡Gracias! 

No aclaras lo que se te solicita oportunamente ... valoras pobremente 3 meses después una respuesta correcta y explicada ... sin duda tú no te llevas 5 estrellas ;(

Sdos!

Agradezco tu interés, conozco poco o nada la dinámica de la página, la pregunta la resolví hace mucho y hasta hoy vuelvo a verla. Lamento los inconvenientes... ten un feliz día!

'... La pregunta la resolví hace mucho...' claro, porque consultaste el día 20/04 y te envié solución el día 21/04.

Correspondía que la valores en ese entonces ( y de acuerdo a la solución enviada) y no ahora de apuro porque necesitabas dejar otra consulta y el foro te lo exige... entonces ahora la valoración va de apuro y pobremente.

Que tengas un feliz día tu también !

Como experta deberías saber que suponer está mal, no ingresé a hacer otra pregunta, las razones me las reservo, igualmente de nuevo lamento los inconvenientes. de antemano te aclaro que la pregunta la resolví el mismo día, por ende no regresé a la página y no ví tu publicación, me gustaría por favor me explicaras la dinámica de la página por que sigo sin entender el problema de "calificarla" hoy, o haberla calificado hace 3 meses....

La dinámica de la página te lo explica el mismo sitio al momento en que dejas una consulta. Algunas pautas:

- Al momento de publicar una consulta se te sugiere (¿o exige?) Que tenés consultas pendientes de valorar o cerrar... por lo tanto creo no estar 'suponiendo mal'. El mismo día dejaste una nueva en el tablón.

- Podés anular una consulta o aclarar a continuación que el tema ya lo resolviste. Por una cuestión de respeto... ese tiempo se puede dedicar a tantos otros que sí necesitan una solución.

- El sitio te envía un correo notificando que recibiste una respuesta a tu consulta. Lo cortés hubiese sido dejar una nota (¿agradecer?) Y darla por cerrada, aunque el tema ya lo habías resuelto por tu cuenta.

Para más detalles visita el blog de los administradores.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas