Saltar al contenido

BUSCAR EN UN LISTBOX


Ir a la solución Solucionado por salvador,

Recommended Posts

publicado

Funciona y para el boton agregar tejidos donde tengo que poner el with y donde tengo que acabarlo? Perdona que te moleste, pero es que estoy empezando en vba 

  • 1 month later...
publicado

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

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.

  • 1 month later...
publicado

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

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

 

Conéctate para comentar

Podrás dejar un comentario después de conectarte



Conéctate ahora
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.