Pasar datos a un listbox y datos repetidos resumidos en una sola línea

Necesito por favor me puedan ayudar con el siguiente problema:

Necesito pasar los datos de ventas a un listbox, los datos se encuentran en una hoja llamada "ventas" producto por producto, en la columna A está el número de boleta y en la columna B el tipo de producto.

Necesito pasar todos los datos a un listbox línea por línea, pero, necesito que los productos de una misma boleta pasen a una sola línea resumida. Ej:

Línea 1: Boleta N° 1001, producto "Sandwich"
Línea 2: Boleta N 1002, producto "Pizza"
Línea 3: Boleta N°1002, producto "Sushi"

Entonces el listbox debería quedar algo así

Columna1: 1001 Columna 2: Sandwich

Columna1: 1002 Columna 2: Pizza, Sushi

Espero me puedan entender y ayudar. En resumen el problema se me presenta cuando una misma boleta tiene más de un item de venta.

Muchas gracias!

Dante Amor

Luis Mondelo

1 respuesta

Respuesta
1

En el evento UserForm Activate de un formulario creado en Excel

Dim Boletas(10000) As String
Dim BoletasRellenas(10000) As String
Dim BoletasBoleta(10000) As String
Dim BoletasTipo(10000) As String
Private Sub UserForm_Activate()
With Hoja1
b = 0
iLimite = .UsedRange.Rows.Count
For f = 2 To iLimite
Bol = Cells(f, 1)
Tipo = Cells(f, 2)
existe = False
For y = 0 To UBound(Boletas)
If Bol = Boletas(y) Then
p = y
existe = True
Exit For
End If
Next
If Not existe Then
Boletas(b) = Bol
BoletasRellenas(b) = "Boleta Nº " & Bol & Tipo
BoletasBoleta(b) = Bol
BoletasTipo(b) = Tipo
b = b + 1
Else
BoletasRellenas(p) = BoletasRellenas(p) & "," & Tipo
BoletasBoleta(p) = Bol
BoletasTipo(p) = BoletasTipo(p) & "," & Tipo
End If
Next

x = 1
For bb = 0 To b
ListBox1.AddItem ("")
ListBox1.List(bb, 0) = BoletasBoleta(bb)
ListBox1.List(bb, 1) = BoletasTipo(bb)
x = x + 1
Next
End With
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas