Crear listbox y pasar datos formulario

Dante...

¿

¿Podrías darme un ejemplo de como queda con un listbox? Es cierto lo que dices con respecto a programar cada textbox y también con el problema de necesitar más de 15 items. Pero la hoja excel está configurada como formato de impresión y no quiero perder eso... O sea... La orden de compra debe quedar siempre en una sola hoja, antes tenía 20 items, pero tuve que eliminar líneas para adaptar la cantidad de textbox en el userform.

¿Me puedes guiar al respecto?

1 respuesta

Respuesta
1

 H o l a:

Te anexo el código para enviar los datos al listbox

Private Sub CommandButton5_Click()
'Por.Dante Amor
'Aceptar
    If TextBox1 = "" Then
        MsgBox "Falta descripción"
        TextBox1.SetFocus
        Exit Sub
    End If
    '
    If TextBox2 = "" Then
        MsgBox "Falta unidad"
        TextBox2.SetFocus
        Exit Sub
    End If
    '
    If TextBox3 = "" Or TextBox3 = 0 Or Not IsNumeric(TextBox3) Then
        MsgBox "Falta cantidad"
        TextBox3.SetFocus
        Exit Sub
    End If
    '
    If TextBox4 = "" Or TextBox4 = 0 Or Not IsNumeric(TextBox4) Then
        MsgBox "Falta Valor"
        TextBox4.SetFocus
        Exit Sub
    End If
    '
    ListBox1.AddItem TextBox1
    ListBox1.List(ListBox1.ListCount - 1, 1) = TextBox2
    ListBox1.List(ListBox1.ListCount - 1, 2) = TextBox3
    ListBox1.List(ListBox1.ListCount - 1, 3) = TextBox4
    ListBox1.List(ListBox1.ListCount - 1, 4) = CDbl(TextBox3) * CDbl(TextBox4)
End Sub

Dante... ese código para pasar los textbox al listbox ya los tenia, lo que necesito ahora es... volver a cargar de vuelta todo el rango D20:g39 al listbox. Cual es la idea... si dejo la orden de compra a medias, con valores ingresados y tengo que cerrar el form. Los datos quedaran ahí, en la hoja y cuando vuelva a abrir el form estará{a vacío, ya hice todo el paso para traer los labels y textbox de vuelta, o sea... cargar todo el contenido de la hoja al form. Solo me falta cargar ese rango de celdas al listbox... como te mencionaba, lo hice con rowsource, pero después tengo problemas para limpiar el listbox o para eliminar algún item.

Otra consulta y aprovechando...¿podrías ayudarme con establecer un máximo de 20 líneas en el listbox?

Gracias!

Vamos a ordenar las ideas, el código que te estoy enviando en esta pregunta es para responder la petición del ejemplo. Estas líneas no las tenías, yo te las envié. Pero tengo que publicar la respuesta en la página para completar tu pregunta.

Ahora, regresando a la idea. Lo que hace el código es ir llenando el listbox.

Una vez que tengas lleno el listbox, se deberán pasar los datos del listbox a las celdas.

Esa es la idea de un userform, que de manera gráfica puedas capturar la información y después almacenarla en la hoja. Y no al revés, que captures en la hoja y la pases al userform.

Entonces, una vez que tengas toda la información capturada en el userform la pasas a las celdas, guardas tu hoja o la imprimes, o no sé cuál sea tu proceso.

Esa es la idea que te propongo, pero si tienes otra idea de lo que quieres, entonces explícame paso a paso qué quieres hacer.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas