Qué tal chicos! , Cómo sumar ¿Valores de un listbox en un textbox automáticamente?

Tengo un listbox con 18 columnas, el cual lleno con datos según el código elegido en un combobox, mi intención es que al llenarse el listbox, también se haga automáticamente la suma total de los valores de la columna 18 en un textbox.

1

1 Respuesta

2.157.440 pts. En mi sitio encontraran material de ayuda, ejemplos...

¿No importa que sea una chica? ;)

Bien, para sumar a medida que vas llenando el listbox podes utilizar estas instrucciones:

total = total + VAL (listbox1.List(i,17)

Textbox1 = total

Donde total será una variable que estará inicializada en 0 al inicio del proceso

i = el listbox1. Listitem, es decir el mismo que se está completando.

VAL considerando que los valores serán enteros, sino colocá CDBL

Ajustá el nombre de tus controles, probalo y si queda algo por resolver dejame escrita la macro que tengas para llenar el listbox.

Guau!!, gracias por tu inmediata respuesta. No tengo ningún problema con el genero, eres muy amable.

Referente al tema que nos ocupa, no sé que estoy haciendo mal, soy un principiante así que te mando las macros de mi listbox para que me ayudes a comprender mejor, al final esta la macro que me sugeriste, hago de tu conocimiento que uso excel 2013, gracias por tu ayuda..

Private Sub CbtEliminar_Click()
Pregunta = MsgBox("Estás seguro de eliminar el registro?", vbYesNo + vbQuestion, "FACTURAS") If Pregunta <> vbNo Then FILA = Me.ListBox1.ListIndex + 2 Rows(FILA).Delete Application.ScreenUpdating = True End If End Sub


Private Sub CbtModificar_Click() If Me.ListBox1.ListIndex < 0 Then MsgBox "No se ha elegido ningún registro", vbExclamation, "SELECCIONE UN REGISTRO" Else UFmodificar.Show End If End Sub


Private Sub ComboBoxCODIGO_Enter() Application.ScreenUpdating = False ComboBoxCODIGO.Clear Sheets("EQUIPO").Select Range("A3").Select Do While Not IsEmpty(ActiveCell) ComboBoxCODIGO.AddItem ActiveCell.Value ActiveCell.Offset(1, 0).Select Loop End Sub


Private Sub CommandButtonCONSUL_Click() Application.ScreenUpdating = False Sheets("EQUIPO").Activate
FILTRAEQUIPAMIENTO
End Sub


Private Sub CommandButtonLIMP_Click()
Range("CODOBRA").ClearContents Range("EQUIPADO").ClearContents
End Sub

Private Sub CommandButtonREPOR_Click() Application.ScreenUpdating = False Sheets("BASE 2010").Range("EQUIPADO").PrintOut 1, 1
End Sub


Private Sub UserForm_Initialize() Application.ScreenUpdating = False Sheets("BASE 2010").Select ComboBoxCODIGO.ControlSource = "CODOBRA" ListBox1.RowSource = "EQUIPADO" End Sub


Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) OBRAS_EQUIPADAS.Hide UserForm1.Show End Sub
Private Sub ListBox1_Click() FILA = Me.ListBox1.ListIndex + 2 For i = 1 To 19 Cells(FILA, 1).Activate Next i End Sub

Dim total As Double
For i = 0 To ListBox1.listitem total = total + CDbl(ListBox1.List(i, 17)) Next
TextBox1 = total
End Sub

Enviame el libro con el UF porque así no veo que estés 'llenando' el listbox.

No sirve la idea si le asignas un rango al listbox, solo si vas a llenarlo como llenas el combo, con Additem.

Mejor enviame el libro. Podes tomar el correo que aparece en mi sitio que dejo al pie.

De acuerdo, el archivo ya debe estar en su correo, gracias por su tiempo.

Recibido. Veré de revisarlo en el día de hoy... no finalices aún. Sdos!

Estoy esperando que me envíes la clave del editor para revisar las macros. Sdos!

Qué tal, buenas noches, disculpa mi demora y la clave es "[email protected]".

Agradezco y admiro tu gran labor, que tengas un feliz noche.

Enviado, hay otros temas a resolver. Cuando finalices esta consulta podes dejarla en el tablón y con mucho gusto continuaré con el tema.

Muy buena solución, solo tuve que declarar las variables, ajustar el número de col. y convertir el formato en moneda. Gracias por tu apoyo!.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas