Excel - Como hacer un formulario de busqueda inteligente en Excel VBA (Macros)
ฝัง
- เผยแพร่เมื่อ 5 ก.ย. 2024
- Búsqueda inteligente en excel, crear un formulario de busqueda VBA
Hacer un formulario con busqueda avanzada en excel VBA - Macros
Suscríbete: www.youtube.co...
🚀 Suscríbete a mi otro canal:
bit.ly/MiguelVela @Miguel Vela
🤗 Visita nuestras redes sociales:
Sitio web: www.tiotech.net
eltiotech.com
Facebook: / eltiotechoficial
Instagram: / luismiguelvelavela
🟩 Grupo de ayuda Excel:
/ excelayudas
🟦 Grupo de ayuda Word:
/ 2954410744838915
🚀🚀Curso 100% Gratis de Programación de Macros VBA Excel Aquí 🔽 70 Horas
eltiotech.com/curso-completo-vba-macros-excel/
Buenas tardes
muy buena explicación, pero seria bueno que colocara los comandos escritos en la descripción y así se evita la equivocación a los no manejamos VBA. Gracias
ya pude! ya pude! ya pude! GRACIAS TIO TECH. HE IDO APRENDIENDO POCO A POCO. QUE INTERESANTE, PRODUCTIVO Y DIVERTIDO ME PARECE TODO ESTO. FELICIDADES POR TU TALENTO PARA ENSEÑAR.
Felicidades, sencillamente increíble sencillo, al grano
Excelente aporte y mejor aún la explicación, mil gracias
Gracias totales Miguel. Adapté este código para buscar en 12 hojas y me funciona de maravilla. Agradecido por tu enseñanza. Un abrazo desde Salta, Argentina.
Alguna posibilidad que compartas cómo lo adaptaste para buscar info de otras hojas?
PODRIA COMPARTIR COMO LO HIZO?
Seguí los pasos para crear el botón, reemplacé algunas variables que me hacía falta definir con otros valores, agregué algunas etiquetas para mejorarlo visualmente y que se viera un poco más ordenado, me funcionó, muchas gracias!
Felicitaciones por la excelente didáctica para enseñar a elaborar formularios. Es un inicio muy prometedor que tengo. Muchas gracias.
Excelente el método de enseñanza, de verdad, de lo mejor...
Lo primero, GRACIAS POR TU TIEMPO, muy buen recurso, bien explicado, sencillo y fácil de comprender. El recurso es muy bueno. Felicitaciones por tu trabajo y mi agradecimiento.
para la referencia "NumeroDatos = Hoja3.Range("B" & Rows.Count).End(xlUp).Row" no me funcionaba hasta escribirla correctamente de la siguiente manera: "NumeroDatos = Sheets("Hoja3").Range("B" & Rows.Count).End(xlUp).Row " de pronto debe ser porque es excel 2016
Gracia amigo me has salvado estabas en lo correcto, muchas gracias
eres un genio
Thank you
gracias por el dato, asi si me sirvio, sera por la version de excel?
Gracias!!! A mi tampoco me funcionaba pero con esto todo bien!
MUCHAS GRACIAS, muy bien explicado
Gracias he aprendido mucho de excel gracias a tu paciencia de explicar y saber que siempre le he tenido miedo a Excel ahora no! Eres genial
Hola Gente, dejo un comentario por si alguno se tropieza con el mismo problema que yo, mas alla de que todo el código este igual y solo reemplazar el nombre de la Hoja de referencia (en el video llamada Hoja1), al tipear en el TextBox (TEXTO) salia el error 424, despues de renegar 1 dia completo y reescribir todo mil veces, me doy cuenta que por mas que nosotros cambiemos el nombre de la Hoja en el archivo excel, en el VBA Proyect la hoja se sigue llamando "Hoja1" seguido entre parentesis por el nombre que nosotros hayamos elegido llamarlo, pero llamandose Hoja1 en fin, motivo por el cual al colocar cualquier otro nombre el código marca error.
Espero haber sido claro y que sea util para alguien mas. abrazo.
Y mil gracias al creador por el gran aporte, es excelente
lei tu apreciacion es cierto .... hagan esto gente hagan anti clik en la hoja d excel que quieren trabajar y hvayan a codigo se abrira el vba yveran el verdadero nombre de la hoja
excelente vídeo me ayudo mucho para mi proyecto de mi escuela, de verdad muchas gracias
Exelente video y muy bien esplicado sigue asi muchas gracias..
Hola Tio Tech, la verdad que explicas muy bien y no son tan largas tus programaciones.
Ahora estoy haciendo algo muy parecido por búsqueda pero quiero que lo condiciones una celda que yo elija. Puse por dos listbox pero demora mucho en la búsqueda son alrededor de 30.000 articulos. Desde ya muchas gracias.
GRACIAS TIOO, LO MAXIMO PROGRAMACION EN EXCEL
Gracias bro me salvaste en mi clase de Informática Avanzada
me da gusto porque tienes paciencia para explicar tus vídeos, sin
importar lo que demore, sigue así amigo. felicidades por tu canal.
Muchas gracias
SOS UN GENIO, LO HACES VER MUY FACIL.
Muchas gracias Tio Tech, me ayudo bastante el ejemplo y tus codigos!
MUY BUENO HERMANO TREMENDA HERRAMIENTA. SIGA ADELANTE
Excelente vídeo Tio Tech, ojala puedas mejorar solo la calidad del vídeo porque no se logran ver bien algunos códigos.
excelente explicacion .. muy util... gracias tio
He visto otros videos para hacer algo parecido pero era muy rebuscado tu video es mil veces mas practico y bien explicado muchas gracias y por favor segui haciendo el mismo perfil de video y esta muy bueno que te des el tiempo para explayarte
MUY BUENA LA EXPLICACION. GRACIAS
Muchas gracias colega. me ha venido de lujo. Muchas gracias amigo.
Que tal tío tech, ayudanos para poder agregar mas de 10 columnas en el buscador, te lo agradeceriamos bastante.
LIKE SI QUIEREN QUE TIO TECHE NOS AYUDE CON ESTE PROBLEMA !! :D
YA LO SOLUCIONASTE MAN
no aun no la resuelvo :(
No sé si has encontrado solución, pero lo que yo hice fue copiar la siguiente parte del código hacia abajo:
Me.Lista.List(y, 0) = Hoja1.Cells(fila, 1).Value
"Cambiando los valores de las columnas"
Si al ejecutar y escribir algo (palabra) en el cuadro de texto no aparece nada en el listbox, entonces tienes que revisar tu codigo en la siguiente parte:
descrip = Hoja1.Cells(fila, 2).Value
El 2 indica la columna que quieres que se muestre. Si en esa columna tú tienes numeros, entonces tienes que buscar (al ejecutar tu userform) con numeros. Si quieres buscar con palabras, entonces busca en tu tabla de excel en que columna están las palabras; luego, reemplaza el numero 2 que está dentro del paréntesis por el numero de la columna donde tú tienes las palabras.
Hola que pusiste para lograr mas de 10 columnas?
@Orlando Vallejos Azocar muchas gracias 😁
excelente video, falto incluir en la descripción el formato de moneda
EXCELENTE TU APORTE ME FUNCIONA MUY BIEN...GRACIAS
HAZ LA TERCERA PARTE......POR FA
hola tio tech muy buenos tus videos. los pongo a prueva y corren bien. me gustaria que algun dia hagas un tutorial de busqueda pero con varias hojas. sigue asi muchos exitos
Muchas gracias por el vídeo, me sirvió bastante, solo que tuve que agregar un poco mas de información para que me pudiera ejecutar a la perfección, creía que no funcionaba pero me hacía falta código
Private Sub buscartienda_Change()
NumeroDatos = Worksheets("Tabla").Range("A" & Rows.Count).End(xlUp).Row
Worksheets("Tabla").AutoFilterMode = False
Me.listabusca = Clear
Me.listabusca.RowSource = Clear
y = 0
For fila = 2 To NumeroDatos
descrip = Worksheets("Tabla").Cells(fila, 1).Value
If UCase(descrip) Like "*" & UCase(Me.buscartienda.Value) & "*" Then
Me.listabusca.AddItem
Me.listabusca.List(y, 0) = Worksheets("Tabla").Cells(fila, 1).Value
Me.listabusca.List(y, 1) = Worksheets("Tabla").Cells(fila, 2).Value
y = y + 1
End If
Next
End Sub
Muchas gracias por tus enseñanzas ssludos
Gracias, me ayudaste aunque me salieron algunos errores pero pude resolver leyendo los comentarios, gracias
hola excelente vídeo pero deberías de dejar los códigos en la descripción ya que algunos códigos no los e podido copiar ni subiendo la resolución del vídeo a lo máximo
excelente video
Gracias!!!
Buen video, bien explicado. Me gustaría saber como hacer la misma búsqueda pero a una tabla alojada en un libro distinto y después copiar esa coincidencia en una hoja del libro actual (donde se ejecuta la macro). Espero me puedas ayudar con esta duda. Muchas gracias.
Mil Gracias.... Tio Tech, me ayuda bastante este tuto pero falta el video en el que seleccionaremos haciendo doble click. Porfavor subelo para completar nuestro aprendizaje con usted.
Saludos Tío Tech! Gracias por compartir esos conocimientos q son de full ayuda. Disculpa, cuál es el siguiente vídeo que continúa el tema?
excelente ya hice el ejercicio del tutorial suyo completo de 32 min son solucion algunos problemillas gracias aunque no he encontrado el de añadir las columnas que quiera con Rowsource
Muy bueno me sirvió de mucho
Buen video, te agradezco por compartir tus conocimientos, estaré esperando el tercer video
TIO TECH PARA QUE SEA MAS RÁPIDO COLOCALE ZOOM CUANDO ESTE RELLENADO EL CUADRO PARA PODER COMPARAR LOS CÓDIGOS X HAY PARTES K NO SE NOTAN CLARAMENTE LOS CÓDIGOS YA QUE LA MAYORÍA NO ESTÁN FAMILIARIZADOS CON ESTOS CÓDIGOS
GRACIAS Y BUEN VÍDEO
Excelente, Felicitaciones + Like
Saludos desde Chile. 07-05-2018
Vengo a dejar mi agradecimiento en forma de like y comentario. Muchas gracias en serio. Muy buen turorial
Gracias buen aporte, faltaria la tercera parte donde se selecciona, gracias!
Excelente tuto !!! Muchas Gracias !!! Podrias explicar el método RowSource ? Gracias nuevamente !!!
Gracias :3 convine tu código con el mio y quedo pero buenaaaaaaaaardo
Capisimo bro Tio Tech, mis respetos por tus codigos, el ultimo vio xfa
Para todos los que tuvimos problemas en la primera parte les tengo una opcion que me ha servido.
Coloque lo siguiente:
Private Sub BUSCARR_change()
Dim fila As Integer
Hoja7.AutofilterMode= false
Me.ListBox1 =Clear
Me.ListBox1.RowSource = Clear
Y=0
For fila = 2 to 2000
Descrip = Hoja7.Cells(fila, 1). Value
Y= Y+1
End If
Next
End Sub
ESPERO LES AYUDE A MI ME HA SERVIDO EXCELENTE!!!! SALUDOS Y GRACIAS POR ESTE SUPER VIDEO!!!
Excelente, saludos desde Nicaragua. Me funciona excelente.
Te pasaste macho!!!! Muy bueno y clarito (que es lo importante), muchos like!!!!
Excelente Tio Tech, he aprendido muchísimo de mis errores y de los tuyos tambien XDXD
Gracias! que gran ayuda me has dado
muchas gracias por el aporte!!! Excelente
Saludos rodolfo.
hola tio tech, quisiera filtrar un cliente de un listox, seleccionando datos de un combo que toma datos de una tabla y a su vez de un rango de fechas y mostrar el valor recaudado,,,se puede hacer? muchas gracias, aprendo mucho con tus videos
Gracias por el conocimiento. Por favor mejorar la resolución de los videos o acercar al momento de escribir los códigos, o en su defecto mencionarlos para entender mejor y mas rápido
Hola, Tio Tech. He visto los videos de la primer y segunda parte de este tema, son Exelentes. Era toda la informacion que necesitaba para mi proyecto.
Te queria preguntar cual es el video que correponde a la 3° Parte ?, para poder seleccionar datos de la ListBox y mandarlos a la celde deseada.
Muchas gracias
muy buen tutorial, gracias Tio tech, todo bien
Excelente video tío
Hola Miguel!! Te sigo!! Consulta por favor, cual es el link para ver tu video donde con Double Click luego de una Búsqueda, desde el el listbox se puede ingresar o ver los datos en el formulario?? o cargarlos en el mismo para poder visualizarlos y al futuro editarlos??? Muchas Gracias por todo tu esfuerzo y aportes!! Espero pronto tu respuesta. Abrazo!!
Hola tio Tech, magnífico: Como hacer un formulario de búsqueda inteligente , Lo he utilizado y funciona excelente poco código y eficaz. ¿Se podría mejorar su apariencia para que se vea la línea de encabezados? si se tiene más de una columna creo sería de gran utilidad. Gracias
TIO TECH una pregunta como se podría aplicar un filtro sobre el filtro que ya realizamos con la primer caja de texto es decir buscar dentro de los resultados de la primera busqueda por ejemplo si tuvieras varios items chocolate pero con distinto código, tus videos son lo mejor muchas gracias por tu aporte
wow por ti quiero ser contable ya y trabajar en esto
tio tech! el codigo para que muestre el valor de pesos?
Estoy a la espera del tercer vídeo de esta saga.....jejejeje
Me intereso lo último, para realizar un copiado de lo seleccionado en la lista desplegable y estaría genial que en ese tutorial se genere una lista para imprimir o se manden los datos a un formato de word o del mismo excel para posterior Imprimirlo.
Gracias...
Excelente tutorial
Buen tutorial! Pero Como hago para que el valor seleccionado en el Listbox me vaya a una celda de excel?
Hola, has podido averiguar como ir al valor seleccionado en el list box?? Estoy con el mismo problema!!!
Hola Caro ! Esta respuesta la da en un video del 25-Ene-2018 llamado Excel - Como crear factura automática con búsquedas inteligentes y reportes PDF Excel 2016
Para aquellos que tengan el error 424 object required:
Aqui esta la solucion:
verifica que el nombre de la hoja sea el exacto en "Productoss"
si son idénticos los nombres y aun tienes el error, intenta:
NumeroDatos = Sheets("Produtoss").Range("A" & Rows.Count).End(xlUp).Row
De nada, para eso estamos :)
gracias crack!!
Hice el cambio y en lugar del error 424 ahora me dice "Error 9" "Subindice fuera del intervalo". Me ayudas please 🙏
Excelente video.... solo falta la ultima parte, alguien que me ayude por favor
Me has salvado!! Te doy las gracias, TIO TECH :)
Mi like esta dado
y mi suscripción más que necesaria.
Buen tutorial, solo recomiendo mejorar la resolucion o calidad de video pero aparte de eso, todo fue excellente
Si le subd la calidad a 720 se ve todo super bien
EXCELENTE VÍDEO!
Me gusto la forma acelerada de explicar.....creo deberías hacer todos tus tutoriales así.......en caliente todo.
Al menos para mi es de lo mejor porque las explicaciones lentas aburren y mejor cambio a otro vídeo aunque no sea del tema buscado XD
TIO TECH, GRACIAS POR COMPARTIR ME AYUDAS MUCHO. DISCULPA AUN NO TIENES EL TUTORIAL QUE LE SIGUE??
Buen aporte de mucha utilidad. Tengo una consulta como puedo establecer bien la posición de las colummas para que los datos se muestren correctamente en el listbox. Muchas gracias
Muy buen video, la explicación es muy clara, yo quiero cruzar información de dos archivos diferentes que contienen varias columnas (desde A hasta BC), de ese cruce llenar un tercer archivo que se va llenar con información procedente de ambos archivos, ¿me puedes ayudar?
Excelente, solo que estaría bueno que pongas zoom a lo que escribes.
Por favor, podrías en tus ejemplos de programación con VBA declarar las Variables y además incluir el "Option Expiicit". Muchas gracias por tu ayuda.
Hola Miguel gracias por compartir todos estos tutoriales, queria consultarte si en el buscador se pueden elegir colunnas, es decir en el ejemplo que tienes que en el buscador solo se pueda ver las colunnas de codigo, producto,colunna 1 y colunna 3....... gracias
Hola, muchas gracias, muy buena expicación. Una consulta, es posible que lo que resultó de la búsqueda pueda ser enviado por correo? Me resulta enviar correo, pero envía la planilla completa, la idea es que lo haga con lo filtrado por búsqueda que nos enseñaste. Saludos y reitero los agradecimientos.
MUCHISIMAS GRACIAS POR EL TUTO...
La, segunda parte por favor la de seleccionar el ítem, por favooor
Mi primer interés es Crear un Registro de Productos con sus precios e IMÁGENES, así como Un buscador que me permita buscar el Código, a través del Nombre del producto y Viceversa. Muchas gracias.
Segundo Cardoso Dobarganes lo del buscador q solicitas es otro ejemplo mas elaborado. Si tienes dudas puntuales, tratare de ayudarte.
de mucha ayuda!
COMO VEO EL PRIMER VÍDEO GRACIAS SOS UN GRANDE
Hola cómo estas, no sé mucho de cisul pero estoy haciendo tus videos y me resulta para algunas cosas perfectos con lo que presisó, quería saber si podes hacer un video, no sé si se podrá hacer un formulario que busque en otro excel, que contenga numeros en una celda y datos. No sé si podrá hacer lo de pido
No aclare tiene que tenes más de 10 colunas
Buen dia.
sugerencia.......hay que acercar la pantalla por que no se aprecia lo que escribes. Gracias.
Gracias @tiotech por tus conocimientos, una consulta y como hacer para insertar lo datos filtrados en la celda activa o la última de la tabla??
Pude replicar el código y le puse 2 cuadros de texto pero quiero que se puedan usar los 2 criterios de búsqueda al mismo de tiempo
Por ejemplo que filtre todos los clientes de apellido Pérez de la ciudad Palmeras
Miguel, Buenas tardes, excelente aporte, de hecho me ayudaste mucho (con la primera mitad de lo que busco hacer) de hecho estoy muy interesado en buscador inteligente con el método rowsource, por que de hecho mi listbox efectivamente tiene mas de 10 columnas, lo he buscado por todos lados, pero tu eres el único que encuentro ha tocado el tema tal cual, busque en tu pagina y no encontré la tercera parte, sera que no la vi? o no la has subido? te agradezco mucho tus aportes y espero tener noticias pronto, saludos...
muy buen aporte, pero y la tercera parte
Buenos dias, una pregunta como hacer un código con una etiqueta dependiente del dato del combobox
es decir si elijo un producto me aparezca de forma automática su código en la etiqueta o si elijo un cliente me aparezca de forma automática su código y localidad..
Saludos desde México
Amigo bueno tu explicación consulta en el formulario los espacios no todos tienen el mismo largo como cambiarlos hay unos mas cortos que otros
Hola Tio Tech. Es posible hacer una búsqueda inteligente con varios filtros? Por ejemplo, tengo un producto que tiene varias propiedades. Por ejemplo una remera (Color,Talle,Género, Modelo) y quiero poder ir filtrando a medida que elijo las propiedades de la remera, es esto posible con macros? Saludos!
Excelente Tutorial
Saludos, he visto que muchos tienen problemas con el error 424
prueben usando esta sintaxis, a mi me funciono a la perfección.
Private Sub texto_Change()
NumeroDatos = ThisWorkbook.Sheets("Hoja1").Cells(Rows.Count, 1).End(xlUp).Row
ThisWorkbook.Sheets("Hoja1").AutoFilterMode = False
Me.lista = Clear
Me.lista.RowSource = Clear
y = 0
For fila = 2 To NumeroDatos
desc = ThisWorkbook.Sheets("Hoja1").Cells(fila, 1).Value
If UCase(desc) Like "*" & UCase(Me.texto.Value) & "*" Then
Me.lista.AddItem
Me.lista.List(y, 0) = ThisWorkbook.Sheets("Hoja1").Cells(fila, 1).Value
Me.lista.List(y, 1) = ThisWorkbook.Sheets("Hoja1").Cells(fila, 2).Value
Me.lista.List(y, 2) = ThisWorkbook.Sheets("Hoja1").Cells(fila, 3).Value
Me.lista.List(y, 3) = ThisWorkbook.Sheets("Hoja1").Cells(fila, 4).Value
Me.lista.List(y, 4) = ThisWorkbook.Sheets("Hoja1").Cells(fila, 5).Value
Me.lista.List(y, 5) = ThisWorkbook.Sheets("Hoja1").Cells(fila, 6).Value
Me.lista.List(y, 6) = ThisWorkbook.Sheets("Hoja1").Cells(fila, 7).Value
Me.lista.List(y, 7) = ThisWorkbook.Sheets("Hoja1").Cells(fila, 8).Value
y = y + 1
End If
Next
End Sub
Gracias me sirvio mucho
@@anitaponcio5883 NO ENTIENDO DONDE ESTAS LA SOLUCION AMIGA... PUEDE EXPLICARME DONDE ESTA EL CAMBIO
Excelente! suscrito! Gracias!!