Modo alternativo de Función BUSCARV con VBA | Excel 2016 #96

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 ก.ย. 2024
  • La función BUSCARV, una de mis favoritas… y me atrevo a asegurar que favorita de muchos… es una de las funciones que usamos con mucha frecuencia al momento de recuperar datos que necesitamos desde otras hojas de cálculo.
    En este vídeo crearé un Modo alternativo de la Función BUSCARV con VBA.
    Te invito a que veas el procedimiento, el cual nos da el mismo resultado que la función BUSCARV, sin necesidad de utilizar la función VLookup, que nos proporciona VBA.
    Aquí pondremos en práctica, lo que hemos visto en la serie RECORRER FILAS Y COLUMNAS: • ¿Cómo Recorrer Filas y...
    Descarga proyecto: goo.gl/N9gknv
    Si el vídeo te gustó...
    SUSCRÍBETE A MI CANAL ❤: bit.ly/ottojavi...
    Sígueme en las Redes Sociales
    Facebook: bit.ly/Facebook...
    Twitter: bit.ly/twitter_OJG
    Google Plus: bit.ly/GooglePl...
    Instagram: bit.ly/Instagra...
    Visita mi Blog: expandiendoexce...

ความคิดเห็น • 62

  • @ErnestoDelMar
    @ErnestoDelMar 7 ปีที่แล้ว +1

    Muy buena explicación Don Otto; sobre todo, la programación
    de prevención de errores que... Usualmente no se incluyen por los
    desarrolladores en VBA, caso contrario en los que INVARIABLEMENTE, se hacen forzosamente
    NECESARIOS cuando se trata de la implementación de Complementos, basados en Librerías
    DLLs… Con su apoyo los Usuarios podrán generar sus propias UDFs, con una GRAN
    calidad de uso y ejecución. ¡Mi respeto y admiración Don Otto!

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      Gracias por tu apoyo y valoración Ernesto.
      Saludos!

  • @oasismadretierra2028
    @oasismadretierra2028 2 ปีที่แล้ว

    Gracias otra vez salvando mi vida y trabajo.

  • @ExcelHechoFacil
    @ExcelHechoFacil 7 ปีที่แล้ว +1

    Don Otto que buena rutina implementaste para volver extensiva una búsqueda al puro estilo BuscarV.
    Me gustó mucho las validaciones que desarrollaste para prevenir los posibles errores que puedan darse en la interfaz de usuario por parte del usuario final.
    Esos errores aunque muy obvios, son fundamentales para una correcta ejecución del procedimiento.
    Que buen material, que buen ejemplo, que bueno estos tutos Excel-ente mente ejecutados.
    Saludos mi querido y buen amigo.
    Att: Andrés.

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว +1

      Me alegraste el día con tu comentario mi estimado amigo.
      Muchas gracias por tu valoración y apreciación.
      Un abrazo!

    • @Nanzyz1969
      @Nanzyz1969 7 ปีที่แล้ว

      No hay palabras no solo para el tiempo empleado que nos dedias paea enseñar, tambien nos dejas los coididos y ademas de entender mejor trabamos rapido. Me encataría que vivieras en pais, i para tomar clases y resolver mis miles de dudas, aunque con cada capitulo imagino como crear el proyecto. SI bien el gestor de inventario es brillante, = para el prg. contable..estas clases cortas podemos ir mezclandolas con el gestor o otros formularios. E tu ltimo CAPITULO Fue medio emrollado, este video, me simplica pero me fla un poco.. avisma si puedes darme clase syupe
      UN beso ggggrssscciass

  • @felixantoniopicadocaballer2965
    @felixantoniopicadocaballer2965 7 ปีที่แล้ว +2

    Excelente explicación y sobretodo excelente ayuda profesor Otto, me ha servido muchísimo para aprender y reducir tiempo en las tareas que realizó día a día en mi trabajo.
    Muy agradecido por el tiempo y conocimiento que pone a nuestra disposición.
    Saludos y bendiciones desde Nicaragua.

    • @Nanzyz1969
      @Nanzyz1969 7 ปีที่แล้ว +2

      Idem!!!

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      Muchas gracias por tus impresiones.
      Saludos y un fuerte abrazo!

    • @underhcpunk4955
      @underhcpunk4955 7 ปีที่แล้ว

      Me sumo a los comentarios usted me produce una profunda admiración y respeto . Gracias por educar al prójimo. un fuerte abrazo desde Argentina!!

  • @carloshernanalzate1763
    @carloshernanalzate1763 7 ปีที่แล้ว +1

    Como siempre don Otto muy claro y muy bien exlicado, felicitaciones

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      Gracias por tu comentario Carlos.
      Saludos cordiales! :)

  • @katyaarayavasquez1079
    @katyaarayavasquez1079 7 ปีที่แล้ว +1

    Me encanto, muy buena rutina, a revisarla con calma para implementar en alguna de mis aplicaciones.
    Muchas Gracias Otto por sus esfuerzos y por lo claro en sus explicaciones. Saludos

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      Muchas gracias Katya por dejarme tus impresiones al respecto. Tu comentario me motiva muchísimo, ya que me da la señal que voy por buen camino xD
      Saludos y un fuerte abrazo!

  • @jennyruiz5979
    @jennyruiz5979 6 ปีที่แล้ว +3

    Profesor Otto, super completa la explicación. Quiero preguntarle si es posible hacer esto mismo pero no desde diferentes hojas de un mismo libro, sino desde varios archivos a un solo archivo? Gracias

  • @jennyruiz5979
    @jennyruiz5979 6 ปีที่แล้ว

    Excelente ayuda. Super detallado y muy útil.

  • @heribertobarbosa8235
    @heribertobarbosa8235 7 หลายเดือนก่อน

    Profe buenas noches, primero que todo muchas gracias por compartir su conocimiento Dios le siga bendiciendo por tan grande labor. Yo cambié datos para facilitar mi trabajo pero tengo una duda :
    Mi pregunta es q si yo tengo en cada hoja un mismo producto pero con diferentes precios como haría para q al pulsar buscar me identifique enque hoja está y cuál es el proveedor q tiene el producto de menor precio.

  • @marcosguillermoguerrasolis4577
    @marcosguillermoguerrasolis4577 4 ปีที่แล้ว

    Muchas gracias por tu aporte me ayudo mucho

  • @antoniobalderas2350
    @antoniobalderas2350 7 ปีที่แล้ว

    Eres el mejor esta bien chido tu procedimiento gracias por compartir el conocimiento

  • @luistc1721
    @luistc1721 7 ปีที่แล้ว +1

    excelente tuto .. maestro Otto :) .. saludos desde Perú

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว +1

      Me alegra mucho que te haya gustado.
      Un abrazo!

  • @ergosaludfisioterapia440
    @ergosaludfisioterapia440 7 ปีที่แล้ว +1

    Muchas gracias Señor OTTO.

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      Gracias a ti Rosalía, por el apoyo.
      Un abrazo!

  •  7 ปีที่แล้ว

    excelente maestro.

  • @juanpabloortizrueda2963
    @juanpabloortizrueda2963 7 ปีที่แล้ว +1

    Otto, Excelente , Cada Día Se Aprende Mas Contigo. Aunque Quisiera Compartirte Una Parte Del Trabajo Que Realizo En Excel. Yo Trabajo Con La Función Buscarv Seguido Pero Desearía Aprender a Programar el trabajo para que este se realice sin tener que llenar el libro de formulas. de ser posible quisiera enviarte una copia para que me puedas colaborar. saludos desde colombia

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      Dale... veamos de qué se trata... envíamelo
      Saludos y gracias por tu apoyo!

    • @juanpabloortizrueda2963
      @juanpabloortizrueda2963 7 ปีที่แล้ว +1

      Por Favor me regalas un correo yo te envió el archivo

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      ottogg@hotmial.com

  • @juancarlosmejia2797
    @juancarlosmejia2797 7 ปีที่แล้ว

    Felicitaciones y gracias por compartir sus conocimientos, me ha gustado mucho su video, sólo que quisiera aplicar lo inverso de este caso: deseo hacer la búsqueda en la columna de una hoja y pegar los datos en diferentes hojas dónde están los valores a buscar, si es tan amable en ayudarme se lo agradecería mucho.
    gracias.

  • @carlosrubio3123
    @carlosrubio3123 7 ปีที่แล้ว +1

    Otto de nuevo lo felicito por sus vídeos, pero tengo una pregunta si los datos a buscar están en otro libro como seria la macro

  • @rafaelfabiannichos1800
    @rafaelfabiannichos1800 6 ปีที่แล้ว

    Buenas tardes Sr Otto, como siempre ud compartiendo sus conocimientos que son muy buenos para la comunidad.
    Una consulta, esta macro de búsqueda funciona cuando la hoja de busqueda se encuentra en la primera hoja? es decir si la hoja de busqueda se encuentra en otra posicion por ejemplo en la ultima hoja del libro, tambien debería funcionar o hay que hacerle algunos cambios en el editor?
    Saludos

  • @SieigfreD
    @SieigfreD 7 ปีที่แล้ว +1

    excelentes tutos Otto.
    uso vlookup pero esto me servira de mucho, muchas gracias por sus aportes.
    sin embargo, quisiera si es posible me pueda pasar un tip sobre un userform que estoy desarrollando, sobre operaciones matrematicas, estoy detenido por algunas cosas!!

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      Explícame de que trata a detalle.
      Saludos!

    • @SieigfreD
      @SieigfreD 7 ปีที่แล้ว

      otto seria como aplicar un filtro tomando como referencia un textbox.

  • @Antonio8688
    @Antonio8688 7 ปีที่แล้ว +1

    Profesor Otto, sobrado como siempre. Excelente explicación. Sin embargo, profesor, ¿qué tan posible es que pudiera comentar cada línea de código para mecanizar la instrucción que se ejecuta? No significa esto que sus explicaciones verbales sean confusas, por el contrario, son claras y precisas, es cuestión de memorizar qué hace cada línea de código, sobre todo, para personas que no somos expertos en VBA. Por lo demás, muchísimas gracias por compartir su conocimiento.

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว +1

      Mi estimado Antonio, los comentarios en cada línea, los puedes colocar en base a mis explicaciones en el vídeo... jejejejeje.... Si yo pusiera los comentarios textuales en el archivo, sentiría que estuviera redundando con mis explicaciones verbales, y ya no sería necesario realizar un vídeo sino solo colgar el archivo en un blog... jejejeje Espero entiendas mi punto de vista.
      Saludos y un fuerte abrazo amigo mío!

    • @Antonio8688
      @Antonio8688 7 ปีที่แล้ว +1

      Por supuesto que entiendo su punto de vista y le doy toda la razón. Realmente, no tuve el alcance que usted me plantea acerca de comentar yo mismo cada línea de código. Por favor, discúlpeme por esta sugerencia fuera de lugar. Muchas gracias por responder a mi comentario.

  • @marcosemanuelmarfeo3094
    @marcosemanuelmarfeo3094 4 ปีที่แล้ว

    Hola Otto, excelente explicacion, necesito una ayuda. En el caso que las hojas siguientes tengan las columnas desordenadas o tenga mas o menos columnas, como podria hacer para que funcione correctamente, es decir que no dependa de la ubicacion (0,2) sino que lo encuentre por el nombre del encabezado de la columna. muchas gracias por la ayuda

  • @andrewsguevara.m.3547
    @andrewsguevara.m.3547 7 ปีที่แล้ว

    Otto Excelente, ayuda me esta sirviendo mucho su enseñanza...pero una pregunta por favor me podria explicar como hacer para buscar en una sola hoja y que al pulsar el boton se pasen los datos de la hoja1 a la Hoja dos en base al registro de una columna de nombres....Por favor, estare muy agradecido por su ayuda

  • @fernandoaguilar2
    @fernandoaguilar2 5 ปีที่แล้ว

    Excelente explicación, solo una duda, por lo que veo es para un orden en donde sabemos que el nombre va estar siempre en la columna 2 de todas la hojas, pero si el nombre en la hoja DATA1 esta en la columna 4, en DATA2 el nombre esta en la columna 2, etc. como le haría para que en mi resultado salga ordenado ? no se si me explico con formulas usaría buscarv y coincidir, tendrá algún ejemplo? Saludos

  • @albertruiz4141
    @albertruiz4141 4 ปีที่แล้ว +1

    Muy bueno, pero......
    He visto que si pones un numero que NO este en las paginas se queda colgado el programa , como se puede solucionar ???
    Si ese mismo numero que NO existe lo colocas entre medio con otros que si están no se queda colgado el programa, siempre que no sea el primero de la lista

  • @daguero2012
    @daguero2012 6 ปีที่แล้ว

    Estimado Otto. felicitaciones por el maravilloso código creado.
    Yo estoy buscando en 5 libros que tienen 1 hoja con 65000 registros. Es decir todas las hojas estan llenas en el rango "A:D"
    La columna "A" contien el código que busco y el cual puede estar repetido en varias filas, ya que se reutiliza por diferentes usuarios.
    Lo que necesito es traer a la hoja Buscar todos los registros en los cuales se encuente el código buscado.
    No me sirve BuscarV y VlookUp ya que traen solo el primer registro y no consideran los demas.
    Hice una prueba con el código que tu creaste para pintar las celdas y resultó bien.
    Si tuvieras una sugerencia te agradezco mucho.
    Muchas gracias. Saludos desde Chile. 22-05-2018

    • @bot6731
      @bot6731 5 ปีที่แล้ว

      sé que es muy tarde, pero utilizando filtros avanzados te traes todos los registros con el mismo código.

    • @monsalvejm
      @monsalvejm 4 ปีที่แล้ว

      @@bot6731 Hola como sería lo de los filtros avanzados?

  • @elche-livinthonglopez176
    @elche-livinthonglopez176 5 ปีที่แล้ว

    Tengo dos listados de inventario de dispositivos, me solicitan que busque la coincidencia por su número de serie entre estos dos listados y marque la diferencia de lo que no ha encontrado, esta macro me serviría?
    Muchas gracias.

  • @alejandroramirezparra8755
    @alejandroramirezparra8755 7 ปีที่แล้ว +1

    Buen día, Don otto excelente explicación, quería preguntar, como seria el código de la macro sí, solo quiero buscar en una hoja determinada y no en todas las hojas que contiene el libro. ejemplo en lahoja buscar quiere traer los registros que se encuentran en la hoja base

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว +1

      Simplemente hay que suprimir el ciclo que recorre las hojas y hacer referencia de forma estática a una sola hoja y que haga el ciclo de las filas dentro de esa hoja.
      Saludos!

    • @wilbgoogle6873
      @wilbgoogle6873 3 ปีที่แล้ว +2

      @@excelymasoficial Sub BuscarEnVariasHojas()
      Dim Celda As Range, Rango As Range
      Dim CeldaAux As Range, RangoAux As Range
      'Dim Hoja As Worksheet
      Dim Tiempo1 As Long, Tiempo2 As Long

      Tiempo1 = VBA.Timer
      Application.ScreenUpdating = False
      Application.StatusBar = "Búsqueda en progreso... Espere por favor!"
      Hoja1.Activate
      If Hoja1.Cells(2, 1) = Empty Then
      MsgBox "No hay datos para buscar", vbCritical, "ERROR"
      Exit Sub
      End If
      Set Rango = Hoja1.Range(Cells(2, 1), Cells(2, 1).End(xlDown))
      With Sheets("data1").Activate
      For Each Celda In Rango

      If Celda.Offset(0, 1) Empty And Celda.Offset(0, 2) Empty And Celda.Offset(0, 3) Empty _
      And Celda.Offset(0, 4) Empty And Celda.Offset(0, 5) Empty Then GoTo FinDeBusqueda

      Set RangoAux = Range(Cells(2, 1), Cells(2, 1).End(xlDown))
      For Each CeldaAux In RangoAux
      If Celda = CeldaAux Then
      Celda.Offset(0, 1) = CeldaAux.Offset(0, 1)
      Celda.Offset(0, 2) = CeldaAux.Offset(0, 2)
      Celda.Offset(0, 3) = CeldaAux.Offset(0, 3)
      Celda.Offset(0, 4) = CeldaAux.Offset(0, 4)
      GoTo FinDeBusqueda
      End If
      Next CeldaAux
      FinDeBusqueda:
      Next Celda
      End With
      Hoja1.Activate
      Application.StatusBar = False
      Application.ScreenUpdating = True
      Tiempo2 = VBA.Timer
      MsgBox "Tiempo transcurrido: " & Tiempo2 - Tiempo1 & " segundos"
      End Sub

  • @juancarlosborjaspaz3288
    @juancarlosborjaspaz3288 7 ปีที่แล้ว +1

    profesor muy bueno el video, pero tengo una consulta que condicion le puedo dar para que al momento de pegar los datos en la hoja buscar no sustituya celdas si esta contiene formula

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      El modelo de programación que he estructurado, no está diseñado para que manejes fórmulas en la hoja Buscar, ya que lo que hace el procedimiento, es buscar, y traer los datos encontrados, por lo que la hoja buscar tiene que estar limpia en los datos donde se van a escribir los datos.
      Explícame de mejor manera... que no termino de comprender tu consulta.
      Saludos!

    • @juancarlosborjaspaz3288
      @juancarlosborjaspaz3288 7 ปีที่แล้ว +1

      Otto Javier González si le comento estoy trabajando con una balanza contable tengo formulas de suma en las cuentas generales, lo que pretendo es buscar en una base de datos el movimiento de las cuentas y que me los traiga a a la balanza y que esta me totalice los valores encontrados

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      ahhhh... eso ya es algo que habría que agregar...
      Regálame un modelo en un archivo de Excel para tener una idea más clara.
      Que si tengo tiempo, pues lo haré tuto xD

  • @GermanVillarragacomedy
    @GermanVillarragacomedy 4 ปีที่แล้ว

    en el codigo plantea hoja1.activate, pero no esta definida hoja 1 como variable y ello me genera un error, em colaboa con ese problema o por que no me funciona

  • @mounstruobmx
    @mounstruobmx 3 ปีที่แล้ว

    me puedes contactar para que me ayudes con un problema. gracias

  • @arturocardenas5805
    @arturocardenas5805 5 ปีที่แล้ว

    Hola, he intentado acomodar el codigo para k haga la busqueda en una sola hoja y no he podido tener el resultado esperado, como podria hacer lo mismo pero para que busque en una sola hoja?

  • @richardsuval
    @richardsuval 7 ปีที่แล้ว +1

    prof.. otto pero tiene una falla la programación ... si solo pongo un solo codigo excel entra en conflicto buscando la respuesta.... alguna solucion porfavor

    • @excelymasoficial
      @excelymasoficial  7 ปีที่แล้ว

      Ups... perdón.... Simplemente setéa el rango en la fila "A1" de la hoja1... Para que me entiendas mejor.
      Esta línea: Set Rango = Hoja1.Range(Cells(2, 1), Cells(2, 1).End(xlDown))
      modificala así: Set Rango = Hoja1.Range(Cells(1, 1), Cells(1, 1).End(xlDown))
      Tiene que estar seteado en (1,1) y de esa forma no entre en blucle infinito si dejas un solo código.
      No me explico el antojo de un solo código... si solo es uno, mejor yo escribo los datos... jejejejejeje Diojo yo. xD

    • @MrAnsalaza
      @MrAnsalaza 6 ปีที่แล้ว

      bueno si quieres solo un codigo, pero este es uno de 100 que tienes que buscar...nop?

  • @daguero2012
    @daguero2012 6 ปีที่แล้ว

    Profesor, ¿podría usted indicar su correo?. Muchas gracias.

  • @MrAnsalaza
    @MrAnsalaza 6 ปีที่แล้ว

    No me funcionó, tienes las celdas acomodadas para hacer el ejercicio, pero que pasa cuando quieres obtener los datos de una hoja a otra que tiene un formato diferente...es decir tienes en la hoja buscar el dato en celda de fila 17 columna 5, y la quieres obtener en diferente celda de diferente hoja, por los bucles Excel se vicio y tuve que forzar un apagado...

  • @ginogonzalez3774
    @ginogonzalez3774 5 ปีที่แล้ว

    A ALGUIEN MAS LE PASA QUE NO EBTIENDE LOS CODIGOS????
    QUE PUEDO LEER PARA EMPEZAR A ENTENDER EL LENGUAJE?'??