Jump to content

Filtrar listado en Excel


Recommended Posts

Saludos en base a la imagen anexa quisiera saber que formula me serviria para que al ingresar el codigo de producto en la casilla verde me de un listado de los primeros 10 codigos de producto que coincidan en cod-ubicacion y precio con el que yo ingrese. Ejemplo si ingreso el 2 que es 2174-25 con 240 como no hay mas no muestre nada y si ingresase el cod-prod 3, deberia mostrarme el cod-prod 4 que tambien es 2986-25 con 240. De antemano gracias por su ayuda.

Imagen

Link to comment
Share on other sites

On 6/13/2021 at 7:00 AM, Antoni said:

El código VBA está en la hoja, Alt+F11 y doble click en la hoja.

image.thumb.png.564be873ee7dac07027e86df09f7f122.png

Hice que la celda F1 fuera igual a la celda de otra hoja y cuando cambia el valor no ocurre nada, si lo modifico directamente en la hoja si, pero de lo contrario no pasa nada, que debo modificar para que no ocurra eso? pense que seria el screenupdating pero no.

Link to comment
Share on other sites

Hola @julio-angel

La macro del Maestro @antoni es para copiarla en la hoja en que deseas se ejecute la búsqueda (si es Hoja2, pegarla en el módulo de la Hoja2).
Lo que debes asegurarte es que la celda "F1" (de la hoja que tu deseas) cambie de valor.
Igualmente, te dejo un ejemplo para el caso que planteas en tu último post(si quieres ejecutarla desde otra hoja y que se produzca el cambio de valor de la celda).
ScreenUpdating se usa para evitar el parpadeo durante los cáculos de Excel (puedes pasarlo a TRUE y verificarlo) y con ello, ejecutar con más velocidad el código.

Suerte!

ae20210619_post44965_PRUEBA.xlsm

Edited by tierra_pampa
Link to comment
Share on other sites

  • Crear macros Excel

  • Posts

    • Muchas Gracias Janlui. Funciona perfecto, veras que he añadido a la macro una última línea que es la que crea el fichero final TXT en una ubicación concreta. Lo que no se es porque una vez generado el TXT la última parte la vuelve a entrecomillar (en la hoja 5 del fichero que adjunto veras un pantallazo del TXT que genera) Repito, muchas gracias por la ayuda Saludos       Ejemplo3.xlsm
    • Observé un pequeño error, espero ya esté bien. Sub genera_txt()     Set datos = Worksheets("Hoja1")     Sheets("hoja2").Select     Dim cadena As String     Range("a27:a5000").ClearComments     rd = 2     rs = 27     xc = Chr(34)     Do While datos.Cells(rd, 1) <> ""         cadena = xc & Left(datos.Cells(rd, 3), Len(datos.Cells(rd, 3)) - 6) & xc & "," & xc         For i = 7 To 11             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc         For i = 12 To 56             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc & datos.Cells(rd, 1) & xc         Cells(rs, 1) = cadena         rs = rs + 1         rd = rd + 1     Loop End Sub  
    • Disculpa que no te lo regrese en el archivo, pero mi nivel de membresía no me permite completar al 100% el apoyo que solicitan.
    • Copia la macro y el resultado lo pondrá en la Hoja2... Saludos Sub genera_txt()     Set datos = Worksheets("Hoja1")     Sheets("hoja2").Select     Dim cadena As String     Range("a27:a5000").ClearComments     rd = 2     rs = 27     xc = Chr(34)     Do While datos.Cells(rd, 1) <> ""         cadena = xc & Left(datos.Cells(rd, 3), Len(datos.Cells(rd, 3)) - 6) & xc & "," & xc         For i = 6 To 10             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc         For i = 11 To 56             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc & datos.Cells(rd, 1) & xc         Cells(rs, 1) = cadena         rs = rs + 1         rd = rd + 1     Loop End Sub  
    • Todas tus celdas deberán tener formato numérico.
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy