Muy buen tutorial y excelentes los comentarios. Gracias Sergio!! ✔ Mi humilde aporte es agregar un textbox vinculado a la celda de búsqueda para que los resultados vayan apareciendo a medida que se va digitando y no esperar a dar Enter.
Excelente, Sergio. Por mi parte, he seguido esta metodología: =FILTRAR(Tabla1;ESNUMERO(HALLAR(B5;Tabla1[Marca]&Tabla1[Modelo]&Tabla1[Color]&Tabla1[Descripción]));"")
Excelente, es un motor de búsqueda potente y lo has explicado muy claramente. El único problema para mí es que no tengo la función filtrar ni apilar. ¿Podrán tener otro nombre ó debo descargar algún complemento de Excel? Muchas gracias !!!!
Tengo una duda, si una marca se llama por ejemplo Azul, y esa misma marca tiene un carro Azul; la formula no duplicaria la linea al devolver la misma linea en dos matrices del apilarV?
Buen resultado, pero me parece que es mejor sin el uso de la función DESREF, que es volátil, y mediante el uso de variables con la función LET: =LET(header;{"Marca"\"Modelo"\"Color"\"Descripción"}; array;APILARV(FILTRAR(Tabela1;ESNUMERO(HALLAR(B4;Tabela1[Marca]));0); FILTRAR(Tabela1;ESNUMERO(HALLAR(B4;Tabela1[Modelo]));0); FILTRAR(Tabela1;ESNUMERO(HALLAR(B4;Tabela1[Color]));0); FILTRAR(Tabela1;ESNUMERO(HALLAR(B4;Tabela1[Descripción]));0)); result;APILARV(header;FILTRAR(array;INDICE(array;;1)0)); result) 🤗
@@SergioAlejandroCampos Me alegro de que te haya gustado, pero la solución @Fredick.7 (ver más abajo en los comentarios) es mucho mejor, más sucinta y da el mismo resultado. Hice un cambio en la fórmula para incluir el encabezado. =LET(t;Tabla1; header;{"Marca"\"Modelo"\"Color"\"Descripción"}; array;FILTRAR(t; MMULT(ESNUMERO(HALLAR(B4; t))*1;ENCOL(COLUMNA(t)^0))); result;APILARV(header;array); result) 🤗
Todas las soluciones son válidas José. Quiero hacer un video con las soluciones propuestas, también para darles visibilidad a ustedes, que me hacen el gran favor de comentar y participar.
@@SergioAlejandroCampos Con la solución @Fredick.7, puede crear fácilmente una función LAMBDA: Si no quieres incluir el encabezado: =LAMBDA(TextoBuscado;MatrizTabla; FILTRAR(MatrizTabla; MMULT(N(ESNUMERO(HALLAR(TextoBuscado;MatrizTabla)));ENCOL(COLUMNA(MatrizTabla)^0))))(A5;Tabla1) Si el encabezado es siempre el mismo: =LAMBDA(TextoBuscado;MatrizTabla; LET(header;{"Marca"\"Modelo"\"Color"\"Descripción"}; array;FILTRAR(MatrizTabla; MMULT(N(ESNUMERO(HALLAR(TextoBuscado;MatrizTabla))); ENCOL(COLUMNA(MatrizTabla)^0))); APILARV(header;array)))(A5;Tabla1) 🤗
🙂... Excelente casuística. Por mi parte sugiero la siguiente formulación. ⬇ =LET(t,Tabla1, FILTRAR(t, MMULT(ESNUMERO(HALLAR(A5, t))*1,ENCOL(COLUMNA(t)^0))))
😎... Hay otra forma más simplificada de hacerlo, pero menos eficiente ¿Ustedes que opinan? ⬇ =FILTRAR(Tabla1, BYROW(HALLAR(A5, Tabla1),LAMBDA(m, CONTAR(m))))
@@SergioAlejandroCampos .... 🙂... Claro que sí puedes hacer un video, sería un gusto poder contribuir de alguna manera a esta comunidad que usted con mucho esfuerzo ha formado para el bien de muchos. Yo hace he sido beneficiado en extremo con tu canal sobre todo con los temas de VBA, gracias por compartir semejante contenido de valor. Saludos cordiales desde Ecuador.
Muy buen video. Sin embargo, noté un inconveniente. Cuando la palabra que se está buscando, se encuentra en dos o más columnas de la misma fila, la fila se muestra más de una vez. Para solucionar este problema, propongo realizar la búsqueda solo una vez por fila uniendo los textos. =FILTRAR(Tabla13;ESNUMERO(HALLAR(A5;BYROW(Tabla13;LAMBDA(m;UNIRCADENAS(" ";;m)))));"")
En mi trabajo necesito buscar un producto y agregarle una cantidad ejemplo buscar lápiz lápiz y escribir 10 y que se quede ahí buscar cuaderno cuaderno 15 y así.. no sé si me explique.. ya que con el filtro solo te trae la información pero no se puede agregar información a lo buscado..
Muy bueno. He intentado reducir los pasos introduciendo "SI.ERROR", "SI.CONJUNTO" y cosas así y no es posible. Hay que hacerlo tal cual. El único "pero" es que si en la primera columna de la tabla inicial hay una celda que sea 0 la filtrará siempre, perdiendo la información del resto de columnas de esa fila.
amigo sergio; durante aÑos le he seguido, no se que esta pasando apartir del los ultimos meses del año 2023 y este 2024 pegas link archivo y mandan un link de descarga y lastimosamente note lleva ningun lado. der ser asi asi y sin saber el porque?????
🙂... Por favor, ayúdenme. El problema es que yo no estoy suscrito al programa de "Microsoft Insider". Si alguien está en aquel programa confirmen si la siguiente formulación funciona:⬇ =FILTRAR(Tabla1, BYROW(HALLAR(A5,Tabla1), CONTAR))
Fredick, Su fórmula funciona a la perfección y es más sucinta que la que utilizaste la función MMULT. Parabienes por la concisión y perfección de los resultados. 👏👏👏👏👏👏 Hice dos LAMBDAS CON TUS FÓRMULAS: 1º) =LAMBDA(TextoBuscado;MatrizTabla; FILTRAR(MatrizTabla; MMULT(N(ESNUMERO(HALLAR(TextoBuscado; MatrizTabla)));ENCOL(COLUMNA(MatrizTabla)^0))))(A5;Tabla1) 2º) =LAMBDA(ValorBuscado;MatrizTabla; FILTRAR(MatrizTabla, BYROW(HALLAR(ValorBuscado,MatrizTabla), CONTAR)))(A5;Tabla1) .🤗
@@JoseAntonioMorato 🙂... Gracias por darte el tiempo de corroborar la formulación. Por otro lado, muy buena tu idea de armar UDF en hojas de cálculo . Además, te comento que con VBA hice pruebas de eficiencia con las fórmulas que contienen "Mmult y Byrow (Byrow usándola convencionalmente)", armé un objeto tabla parecida a la del video, pero con medio millón de registros, "Mmult" la procesó en 8.32 de segundos en promedio, y "Byrow" en 8.24 sg.
Aquí la segunda parte de este video: ruclips.net/video/cre1XlbB_yA/видео.html
Excelente contenido Inge, gracias por nunca parar de compartir tu
conocimiento ¡¡
Muy buen video, excelente.- Gracias Ing. Sergio por compartir y enseñar conocimientos.
Excelente señor Sergio
Excelente!!!
👏👏👏👏
Muy bueno!!!
👍👍👍
Muy buen tutorial y excelentes los comentarios.
Gracias Sergio!! ✔
Mi humilde aporte es agregar un textbox vinculado a la celda de búsqueda para que los resultados vayan apareciendo a medida que se va digitando y no esperar a dar Enter.
Qué buena idea!
Excelente ejercicio estimado gracias por compartir
Excelente, Sergio. Por mi parte, he seguido esta metodología:
=FILTRAR(Tabla1;ESNUMERO(HALLAR(B5;Tabla1[Marca]&Tabla1[Modelo]&Tabla1[Color]&Tabla1[Descripción]));"")
Por supuesto! Esto es mucho más eficiente! Por mucho!
Hola , el vídeo está buenazo, lo que estaba buscando👍👍👍
Muchas gracias por tus conocimientos. Cómo hacer búsquedas que no tome en cuenta los acentos
Busco este video “3 trucos de BUSCARV y BUSCARX - Eliminar espacios, Convertir a números y Buscar sin acentos”
Gracias Sergio… muy bueno..!
Excelente, es un motor de búsqueda potente y lo has explicado muy claramente. El único problema para mí es que no tengo la función filtrar ni apilar. ¿Podrán tener otro nombre ó debo descargar algún complemento de Excel? Muchas gracias !!!!
Esas funciones están para la version de excel 365
En Google Sheets tienes acceso a dichas funciones.
Excelente tutorial Sergio, lo único que yo cambiaría es poner las celdas que se ocultan a la derecha de todas las columnas.
👏👏👏👏👏👏👏 Excelente!!
Wow
Tengo una duda, si una marca se llama por ejemplo Azul, y esa misma marca tiene un carro Azul; la formula no duplicaria la linea al devolver la misma linea en dos matrices del apilarV?
Si, habrá que aplicar duplicados.
Requiero hacer un desarrollo para una base de datos en excel, agradeceré me contactes si es de tu interés.
Buen resultado, pero me parece que es mejor sin el uso de la función DESREF, que es volátil, y mediante el uso de variables con la función LET:
=LET(header;{"Marca"\"Modelo"\"Color"\"Descripción"};
array;APILARV(FILTRAR(Tabela1;ESNUMERO(HALLAR(B4;Tabela1[Marca]));0);
FILTRAR(Tabela1;ESNUMERO(HALLAR(B4;Tabela1[Modelo]));0);
FILTRAR(Tabela1;ESNUMERO(HALLAR(B4;Tabela1[Color]));0);
FILTRAR(Tabela1;ESNUMERO(HALLAR(B4;Tabela1[Descripción]));0));
result;APILARV(header;FILTRAR(array;INDICE(array;;1)0));
result) 🤗
Wow!! Me encantó tu solución.
Genial, me permites mostrarla en un video?
@@SergioAlejandroCampos Me alegro de que te haya gustado, pero la solución @Fredick.7 (ver más abajo en los comentarios) es mucho mejor, más sucinta y da el mismo resultado.
Hice un cambio en la fórmula para incluir el encabezado.
=LET(t;Tabla1;
header;{"Marca"\"Modelo"\"Color"\"Descripción"};
array;FILTRAR(t; MMULT(ESNUMERO(HALLAR(B4; t))*1;ENCOL(COLUMNA(t)^0)));
result;APILARV(header;array);
result) 🤗
Todas las soluciones son válidas José. Quiero hacer un video con las soluciones propuestas, también para darles visibilidad a ustedes, que me hacen el gran favor de comentar y participar.
@@SergioAlejandroCampos Con la solución @Fredick.7, puede crear fácilmente una función LAMBDA:
Si no quieres incluir el encabezado:
=LAMBDA(TextoBuscado;MatrizTabla;
FILTRAR(MatrizTabla; MMULT(N(ESNUMERO(HALLAR(TextoBuscado;MatrizTabla)));ENCOL(COLUMNA(MatrizTabla)^0))))(A5;Tabla1)
Si el encabezado es siempre el mismo:
=LAMBDA(TextoBuscado;MatrizTabla;
LET(header;{"Marca"\"Modelo"\"Color"\"Descripción"};
array;FILTRAR(MatrizTabla; MMULT(N(ESNUMERO(HALLAR(TextoBuscado;MatrizTabla)));
ENCOL(COLUMNA(MatrizTabla)^0)));
APILARV(header;array)))(A5;Tabla1) 🤗
🙂... Excelente casuística. Por mi parte sugiero la siguiente formulación. ⬇
=LET(t,Tabla1, FILTRAR(t, MMULT(ESNUMERO(HALLAR(A5, t))*1,ENCOL(COLUMNA(t)^0))))
😎... Hay otra forma más simplificada de hacerlo, pero menos eficiente ¿Ustedes que opinan? ⬇
=FILTRAR(Tabla1, BYROW(HALLAR(A5, Tabla1),LAMBDA(m, CONTAR(m))))
Genial, me permites mostrarla en un video?
@@Fredick.7 Genial, me permites mostrarla en un video?
@@Fredick.7 Genial,
Nunca había visto tanta capacidad para reducir comandos para producir resultados sorprendentes. Parabien. 🤗
@@SergioAlejandroCampos .... 🙂... Claro que sí puedes hacer un video, sería un gusto poder contribuir de alguna manera a esta comunidad que usted con mucho esfuerzo ha formado para el bien de muchos. Yo hace he sido beneficiado en extremo con tu canal sobre todo con los temas de VBA, gracias por compartir semejante contenido de valor. Saludos cordiales desde Ecuador.
Muy buen video. Sin embargo, noté un inconveniente. Cuando la palabra que se está buscando, se encuentra en dos o más columnas de la misma fila, la fila se muestra más de una vez. Para solucionar este problema, propongo realizar la búsqueda solo una vez por fila uniendo los textos.
=FILTRAR(Tabla13;ESNUMERO(HALLAR(A5;BYROW(Tabla13;LAMBDA(m;UNIRCADENAS(" ";;m)))));"")
Genial!!
Muy buena, me permites mostrarla en un video?
@@SergioAlejandroCampos Si por supuesto, no hay problema
En mi trabajo necesito buscar un producto y agregarle una cantidad
ejemplo
buscar lápiz
lápiz y escribir 10 y que se quede ahí
buscar
cuaderno
cuaderno 15
y así.. no sé si me explique..
ya que con el filtro solo te trae la información pero no se puede agregar información a lo buscado..
Muy bueno. He intentado reducir los pasos introduciendo "SI.ERROR", "SI.CONJUNTO" y cosas así y no es posible. Hay que hacerlo tal cual. El único "pero" es que si en la primera columna de la tabla inicial hay una celda que sea 0 la filtrará siempre, perdiendo la información del resto de columnas de esa fila.
HAY UN REFRAN MUY SABIO QUE DICE TEXTUALMENTE "Veo y Olvido, Hago y Aprendo".
de no pareciarte no hubiera escrito lo que he escrito !REFLEXION!
amigo sergio; durante aÑos le he seguido, no se que esta pasando apartir del los ultimos meses del año 2023 y este 2024 pegas link archivo y mandan un link de descarga y lastimosamente note lleva ningun lado. der ser asi asi y sin saber el porque?????
Hola. En los últimos posts se pide tu correo y se te envía el archivo a ese correo. Probaste recientemente con algún video y no te llegó correo?
En caso de no tener la función Filtrar???
Usa Google sheets donde tienes acceso a casi todas las funciones de narices dinámicas y la función Query es más fácil y limpia de utilizar.
🙂... Por favor, ayúdenme. El problema es que yo no estoy suscrito al programa de "Microsoft Insider". Si alguien está en aquel programa confirmen si la siguiente formulación funciona:⬇
=FILTRAR(Tabla1, BYROW(HALLAR(A5,Tabla1), CONTAR))
Fredick,
Su fórmula funciona a la perfección y es más sucinta que la que utilizaste la función MMULT.
Parabienes por la concisión y perfección de los resultados. 👏👏👏👏👏👏
Hice dos LAMBDAS CON TUS FÓRMULAS:
1º)
=LAMBDA(TextoBuscado;MatrizTabla;
FILTRAR(MatrizTabla; MMULT(N(ESNUMERO(HALLAR(TextoBuscado; MatrizTabla)));ENCOL(COLUMNA(MatrizTabla)^0))))(A5;Tabla1)
2º)
=LAMBDA(ValorBuscado;MatrizTabla; FILTRAR(MatrizTabla, BYROW(HALLAR(ValorBuscado,MatrizTabla), CONTAR)))(A5;Tabla1) .🤗
@@JoseAntonioMorato 🙂... Gracias por darte el tiempo de corroborar la formulación. Por otro lado, muy buena tu idea de armar UDF en hojas de cálculo . Además, te comento que con VBA hice pruebas de eficiencia con las fórmulas que contienen "Mmult y Byrow (Byrow usándola convencionalmente)", armé un objeto tabla parecida a la del video, pero con medio millón de registros, "Mmult" la procesó en 8.32 de segundos en promedio, y "Byrow" en 8.24 sg.