Saltar al contenido

BUSCAR EN UN LISTBOX

publicado

Tengo una problema, he creado un formulario de una tabla de mas de 10 columnas, y he creado un listbox para buscar, el codigo que adjunto ( busca correctamente), pero cuando pincho encima de del listbox, no trae correctamente los datos a los cuadros de texto del formulario, ¿alguien me puede ayudar?

 

 

NUMERODEDATOS = Hoja7.Range("B" & Rows.Count).End(xlUp).Row

 

LISTA = Clear

LISTA.RowSource = Clear

 

y = 0

 

 

For FILA = 4 To NUMERODEDATOS

 

nombre = Hoja7.Cells(FILA, 83).Value

 

If UCase(nombre) Like "*" & UCase(Me.txt_buscar_cliente.Value) & "*" Then

 

 

 

 

Me.LISTA.AddItem

Me.LISTA.List(y, 0) = Hoja7.Cells(FILA, 2).Value

Me.LISTA.List(y, 1) = Hoja7.Cells(FILA, 3).Value

Me.LISTA.List(y, 2) = Hoja7.Cells(FILA, 4).Value

Me.LISTA.List(y, 3) = Hoja7.Cells(FILA, 5).Value

Me.LISTA.List(y, 4) = Hoja7.Cells(FILA, 6).Value

Me.LISTA.List(y, 5) = Hoja7.Cells(FILA, 7).Value

Me.LISTA.List(y, 6) = Hoja7.Cells(FILA, 8).Value

Me.LISTA.List(y, 7) = Hoja7.Cells(FILA, 9).Value

Me.LISTA.List(y, 😎 = Hoja7.Cells(FILA, 10).Value

Me.LISTA.List(y, 9) = Hoja7.Cells(FILA, 11).Value

y = y + 1

End If

Next

Featured Replies

publicado
  • Autor

Ya lo tengo solucionado, muchas gracias por tu ayuda, ha sido mi regalo de papa noel -)

  • 1 month later...
publicado
  • Autor

Hola de nuevo Jose, que tal?

Te subo el archivo de nuevo, porque quiero sumar dos texbox y no los suma, cuando le doy al boton calcular.

Me ha traido los datos, del formulario Presupuesto1 y quiero sumarlos en el formulario tarifageneral, pero no me lo suma, me lo añade.

Me puedes ayudar?

Gracias

 

TARIFA_VBA_2024_21.xlsm

publicado
Cambia  estas dos lineas en tu còdigo

txt_dani_general.Value = CDbl(txt_tejido_tapa.Value) + CDbl(txt_referencia.Value) '<<<<<<<<<<<<<<<<<<<<
txt_suma.Value = CDbl(txt_suma) / 100000 ' <<<<<<<<<<<<<<<<<<<<<


Private Sub BT_BUSCARARTICULO_Click()
Dim Rango As Range

Dim suma As Double
Set Rango = Sheets("PRESUPUESTO1").Range("C4:CJ500000")

txt_referencia = Application.WorksheetFunction.VLookup(txt_escandallo.Value, Rango, 4, 0)
txt_articulo = Application.WorksheetFunction.VLookup(txt_escandallo.Value, Rango, 5, 0)
txt_tejido_tapa = Application.WorksheetFunction.VLookup(txt_escandallo.Value, Rango, 82, 0)
txt_comision = Application.WorksheetFunction.VLookup(txt_escandallo.Value, Rango, 50, 0)
'............................... <<<<<<<<<<Resto de tu còdigo
'...............................



On Error Resume Next

txt_dani_general.Value = txt_tejido_tapa.Value & txt_referencia.Value '<<<<<<<<<< Modificar
txt_suma.Value = txt_suma / 100000 '<<<<<<<<<< Modificar


Me.LISTA.RowSource = "ARTICULOS9"
Me.LISTA.ColumnCount = 9
 
End Sub

 

  • 1 month later...
publicado
  • Autor

Buenas noches ,

Me gustaría hacerte una nueva consulta :

tengo una tabla con totales .

me gustaría poder filtrar por la columna IVA 

y que me apareciera el sumatorio en el texbox 

mi código solo funciona , si pongo en 

comentario el filtro 

Adjunto archivo 

IVA SOPORTADO PRUEBA.xlsm

publicado
Private Sub FILTRAR_Click()

    Dim hojadatos As Worksheet
    Dim columna As Range
    Dim ultimafila As Long
    Dim dato As Variant
    
    Set hojadatos = ThisWorkbook.Sheets("IVASOPORTADO")
    Set columna = hojadatos.Columns("H")
    ActiveSheet.ListObjects("CLIENTES").Range.AutoFilter Field:=9, Criteria1:="10.00"
    ultimafila = Hoja5.Range("b" & Rows.Count).End(xlUp).Row
    dato = hojadatos.Cells(ultimafila, 9).Value
    txt_suma21 = dato

End Sub

Con esta modificación de tu código hace lo que supone que necesitas. Pero que pasa si quieres filtrar por un tipo de iva distinto? habría que estructurarlo de diferente forma.

publicado
  • Autor

Perfecto es lo que quería , muchas gracias de nuevo 

  • 1 month later...
publicado
  • Autor

Hola JSDJSD,

Tengo un problema que no puedo resolver,

Tengo una hoja excel, pero quiero trasladar los dato de cantidad vendida a la columna 2, para que salgan todos en la misma columna, con su correspondiente EAN de la primera columna

Adjunto hoja de excel

MADRE MACRO PARA ARREGLAR PDF.xlsm

publicado
  • Autor

Hola,

Subo de nuevo el archivo, lo que quiero hacer es lo siguiente:

La macro Paso 5,  me lleva las celdas con numero que hay debajo de la palabra Cantidad Vendida a la columna 2, de todas las filas seleccionadas previamente en la macro Paso 4, pero si hay una celda en blanco debajo de Cantidad Vendida, entonces no traspasa el numero de abajo

Por ejemplo en las celdas, I488 E I489, el numero 5 de la celda I489, no me lo ha trasladado, porque la celda I488 esta vacía.

Quiero modificar la Macro Paso5, para que me traslade todos los numero que encuentre.

MADRE MACRO PARA ARREGLAR PDF.xlsm

publicado

Cambia tu macro5 por esta modificada y comenta

Sub Paso5()
    Dim ws As Worksheet
    Dim tbl As ListObject
    Dim celda As Range
    Dim colIndex As Integer
    Dim lastRow As Long
    Dim currentRow As Long
    
    ' Seleccionar la hoja llamada "Consulta1"
    Set ws = ThisWorkbook.Sheets("Consulta1")
    
    ' Establecer la tabla "Consulta1"
    Set tbl = ws.ListObjects("Consulta1")
    
    ' Recorrer todas las celdas en el rango de datos de la tabla
    For Each celda In tbl.DataBodyRange
        ' Verificar si la celda contiene el texto "Cantidad Pedida"
        If celda.Value = "Cantidad Vendida" Then
            colIndex = celda.Column
            currentRow = celda.Row + 1
            
            ' Mover el contenido de las celdas debajo de "Cantidad Pedida" a la segunda columna de la misma fila
            Do While ws.Cells(currentRow, colIndex).Value <> "" Or ws.Cells(currentRow, 1).Value <> ""
                ws.Cells(currentRow, 2).Value = ws.Cells(currentRow, colIndex).Value
                ws.Cells(currentRow, colIndex).ClearContents
                currentRow = currentRow + 1
            Loop
        End If
    Next celda
    
    MsgBox "Las celdas debajo de 'Cantidad Pedida' han sido trasladadas a la segunda columna."
End Sub

 

publicado
  • Autor

Funciona perfectamente , es lo que quería hacer , muchas gracias de nuevo 

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.