martes, 9 de junio de 2009

Funciones de Búsqueda: BUSCARV y BUSCARH

Hablaremos hoy de algunas de las funciones básicas de búsqueda: BUSCARV y BUSCARH. ¿Por qué necesitamos conocer estas funciones?, la respuesta es obvia si has decidido buscar por la red información sobre esto; necesitas relacionar valores de un campo de una base de datos en excel con otro campo de otra base de datos. La relación entre campos es, entonces, el objetivo de estas funciones de búsqueda.
Propondremos algunos ejemplos.
Supongamos un listado con operaciones de compra de productos:


en los que tendremos que calcular el precio de compra y obtener el nombre del producto; datos que se encuentran disponibles en una tabla distinta (que se puede localizar en la misma hoja de cálculo o en otro Libro). Por comodidad de trabajo asignaremos un nombre a esta tabla de productos (:=Pdtos)


Queda por calcular, conociendo las unidades compradas de cada producto, el precio total de cada compra, además de conocer el nombre del producto; para ello empleando la función BUSCARV relacionaremos con la tabla de productos aprovechando la coincidencia de campos entre ambas tablas de información, i.e., en ambas tablas existe un campo que contiene elementos coincidentes.


haz click en la imagen



La función de busqueda vertical BUSCARV(valor_buscado; matriz donde buscar; número columna a devolver;tipo coincidencia) trabaja buscando el valor indicado en el primer argumento (sólo podemos buscar UN elemento, nunca un rango) en la matriz determinada en el segundo (la función busca el elemento buscado en la primera columna de la matriz de busqueda), y una vez encontrada la coincidencia devuelve el elemento que corresponda de la columna indicada en el tercer argumento de la función; el último argumento nos dirige hacia una coincidencia exacta o no del valor buscado en la primera columna de busqueda.

La función de busqueda horizontal BUSCARH opera de la misma forma, con los mismos argumentos pero con una orientación horizontal; es decir busca por filas en lugar de por columnas. Por tanto busca el valor buscado en la primera fila de la matriz de busqueda, devolviendo la correspondencia encontrada del número de fila indicado en el tercer argumento.

Puedes descargarte el ejemplo si lo deseas.
Consulta5 BUSCARV-BUSCARH
Consulta5 BUSCARV-...
Hosted by eSnips


242 comentarios:

  1. hola:

    Revisé tu blog y me parece muy útil la info, pero quería preguntarte si tu sabes como hacer lo siguiente:

    Tengo una lista de cosas digamos
    Paquete de Hojas blancas
    lápices
    gomas
    sobres
    plumas
    Paquete de hojas de colores

    etc.

    esto está en excel, claro.
    Qúería sabe si conoces alguna instrucción para discriminar solo una parte del texto, es decir, quiero programar una celda que me diga si existe alguna celda de la lista que contenga la palabra "hojas" sin importar si son blancas o de colores.
    Si pudieras ayudarme lo agradecería mucho
    Saludos
    Eunice

    ResponderEliminar
  2. Hola,
    no me queda claro del todo si quieres que te de un conteo de las celdas del listado que cumplan con esa condición, o si sólo quieres saber si cada una de las celdas de manera independiente tiene o no el texto buscado.
    En todo caso, existe un función de búsqueda que te permitirá HALLAR las coincidencias, supongamos que tienes el listado en el rango A1:A6, entonces en el rango B1:B6 escribiras
    =HALLAR("hojas";A1;1)
    si encuentra el texto te devolverá un valor numérico correspondiente a su situación respecto al número de caracteres total de la celda, y si no lo encuntra te devolverá un error.
    Espero haberte dado la pista para resolver tu problema.
    Slds

    ResponderEliminar
  3. Muchas gracias, me he puesto a revisar esta y otras funciones y ya tengo una idea más clara de lo que puedo hacer.

    ResponderEliminar
  4. HOLA:
    TENGO QUE UNA LISTA DE PRECIOS(CÓDIGO,ARTÍCULO Y PRECIO)Y NO ME SALE,AYUDENME.ES UN TRABAJO PRACTICO PARA PASADO MAÑANA.

    ResponderEliminar
  5. Hola Nahuel,
    será un placer ayudarte si explicas tu problema.
    Slds

    ResponderEliminar
  6. Ej. 4
    Nesecito hacer lo siguinte tengo una tabla que contiene: codigos, aceleradores AGP,textura AGP,ZD 3D WinMark 99,
    Ingresando el código obtener cualquiera de los tres datos posibles pero en forma individual.

    ResponderEliminar
  7. Hola,
    por lo que intuyo, no lo entiendo bien del todo, tienes una tabla con un campo 'códigos' y tres elementos (aceleradores, textura, winmark), y necesitas que al introducir un elemento del campo Código se desplieguen algunos de esos tres datos...
    Si es así, lo más sencillo sería aplicar a las celdas en cuestión una Validación de datos del tipo Lista con esos tres valores.
    Si mi respuesta no se ajusta a tu problema, envíame un correo a
    excelforo@gmail.com
    explicándolo detalladamente junto a un ejemplo.
    Slds

    ResponderEliminar
  8. hola necesito que me ayuden urgente me han dejado este trabajo donde utilizando las funciones de busqueda y referencia arme una formula que haga el siguiente recorrido

    Ingrese el recorrido para salir del laberinto
    PASOS Arriba Abajo Izquierda Derecha
    1ER PASO 2
    2DO PASO 2
    3ER PASO 1
    4TO PASO 2
    5TO PASO 2
    LLEGO AL FIN

    ResponderEliminar
  9. Por favor, necesitaría que fueras más concisa en el problema...
    Slds

    ResponderEliminar
  10. hola necesito hacerles una consulta, tengo el stock por articulo talle, necesito buscar la vta de cada articulo que hay en el stock teniendo en cuenta el talle.
    saludos y gracias

    ResponderEliminar
  11. Hola,
    con las indicaciones que das, poco te puedo ayudar.
    En todo caso quizá puede serte útil una función BUSCARV sobre la tabla de ventas con que, parece, trabajas...
    Quizá sea más comodo para tí enviarme un ejemplo a
    excelforo@gmail.com
    Un saludo

    ResponderEliminar
  12. Gracias, ya le envie a su correo el problema.
    Quedo a la espera de su pronta respuesta.
    Desde ya muy agradecido por su tiempo.
    Gerardo

    ResponderEliminar
  13. Gracias por responderme, el problema que tengo que en donde lo voy aplicar usan office 2003
    y la formula sumar.si.conjunto no se encuentra
    desde ya gracias por tu pronta respuesta y quedo a tu pronta solucion.
    saludos, y nuevamente les agradezco

    ResponderEliminar
  14. Hola de nuevo, Gerardo
    el equivalente con funciones matriciales a lo que pides sería:
    {=SUMA(SI('vtax talle'!$A:$A='informe stock-vta'!A538;SI('vtax talle'!$D:$D='informe stock-vta'!B538;'vtax talle'!E:E)))}
    ejecutandola en forma matricial (Ctrl+Mayus+Enter).
    Slds

    ResponderEliminar
  15. Buen dia, necesito hacerles una consulta haber si me pueden dar una gran mano.
    Necesito buscar un primer valor, si ese valor coincide con el buscado, entonces que buscque el segundo valor, si el primero y segundo valor son verdaderos osea lo que busco que me arroje la cantidad de lo buscado, les paso un ejemplo
    Busco
    LAPICES Nº2 LA CANTIDAD
    COLUMNA A COLUMNA B COLUMMNA C
    GRAYONES Nº1 5
    GRAYONES Nº2 10
    GRAYONES Nº3 25
    LAPICES Nº1 18
    LAPICES Nº2 90
    LAPICES Nº3
    FIBRAS
    MARCADORES
    REGLAS
    saludos, a todos

    ResponderEliminar
  16. Hola,
    tal cual planteas tu tabla de datos, me parece que lo más acertado sería aplicar una función SUMAR.SI.CONJUNTO o en su defecto si trabajas con versiones anteriores a Excel 2007 una función matricial.
    La función sería, suponiendo lo que buscas está en las celdas D1 (="LAPICES") y E1 (="Nº2):
    =SUMAR.SI.CONJUNTO(C:C;A:A;D1;B:B;E1)
    Espero te sea útil.
    Slds

    ResponderEliminar
  17. entiendo perfecto y me sirve mucho, la verdad que estaba equivocado, intentaba con buscarv y el condicional si, pero no podia terminarlo.
    ahora mi pregunta se puede hacer con el buscarv? asi no me quedo con la espiga, ya tengo resuelto el problema gracias a lo que me diste anteriormente.
    pero me gustaria saber si se podia resolver con el buscar v,
    nuevamente gracias.
    muy bueno el foro y la verdad muy rapidas las respuestas.

    ResponderEliminar
  18. El problema de emplear la función BUSCARV en este caso es que tanto en las columnas A y B los distintos elementos (valores) no son únicos, por lo que BUSCARV se volvería loco intentando identificar el valor_buscado concreto que nos valdría; pero una solución intermedia sería añadir una columna auxiliar, donde concatenaramos los elementos de la columna A con los de la B (por ejemplo, LAPICESNº1, LAPICESNº2, etc) con lo que ya podríamos realizar la búsqueda vertical sobre esa nueva columna...
    Slds y muchas gracias por tu comentario, la idea con la que nació este blog personal era precisamente esa, ayudar o intentarlo a los que necesitaran algo de orientación con algún problema en Excel.

    ResponderEliminar
  19. Desde ya muchas gracias, les quedo agradecido por la resolucion de mi problema y la rapida respuesta.
    Saludos, y gracias nuevamente

    ResponderEliminar
  20. Hola buen dia, tengo un problema y necesito su ayuda.
    tengo una planilla armada cuando esta planilla se termine de llenar los campos, necesito que se copie en otra hoja, una ves copiados los datos de esta planilla, necesito que se borren esos campos en la planilla original y asi susesivamente.
    estoy trabajando en office 2003,
    un ejemplo seria usando el anterior.

    LAPICES Nº2 LA CANTIDAD
    COLUMNA A COLUMNA B COLUMMNA C COLUMNA D
    GRAYONES Nº1 5
    GRAYONES Nº2 10
    GRAYONES Nº3 25
    LAPICES Nº1 18
    LAPICES Nº2 90
    LAPICES Nº3
    FIBRAS
    MARCADORES
    REGLAS
    COLUMNA A Y B son datos fijo en cambio C y D si son datos que voy cargando por ingreso de mercaderia, por eso necesito pasarlo a una hoja nueva o que me lo vaya copiando en una hoja aparte hasta que no haya mas lugar y pase a otra hoja cuando la anterior se haya quedado sin espacio esto lo necesito para que me quede una constancia.
    y asi por cada ves que necesito hacerlo.

    saludos y gracias

    ResponderEliminar
  21. Bueno,
    para realizar copiados o traslado de datos lo mejor sería emplear alguna macro. Una opción sería ordenar el copiado de los datos que vas introduciendo en las columnas C y D; puedes ver diferentes formas de hacerlo en:
    http://excelforo.blogspot.com/2011/02/vba-formas-de-copiar-rangos-o-celdas.html
    Espero te oriente
    Slds

    ResponderEliminar
  22. gracias... tengo otra consulta necesito evaluar una columna si contiene un digito entonces que agregue 2 ceros, si tiene dos digitos que agregue un solo cero y si tiene 3 digitos que no agregue nada, la verdad estuve en celdas formatos personalizados pero eso se aplica a todas las celdas, yo necesito que se apliquen con esas condiciones, si tiene 1 digito numerico que ponga adelante del digito 2 ceros, si tiene dos digitos que agregue uno y si hay tres que no agregue ninguno, desde ya gracias

    ResponderEliminar
  23. Hola,
    veamos, si quieres que visualmente te aparezcan, independientemente del valor de tu celda, tres dígitos, con ceros a la izquierda, debería aplicarle un formato personalizado tipo '000' para la columna que quieres evaluar; igualmente podrías hacer lo mismo con un formato condicional, aunque acabaríamos en el mismo formato personalizado.
    Otra opción sería añadir una columna auxiliar con un condicional tipo:
    =SI(celda<=9;"00"&celda;SI(Y(10<=celda;celda<=99);"0"&celda;"00"&celda))
    pero con el inconveniente que los valores devueltos serán tipo texto!!!.
    Slds

    ResponderEliminar
  24. gracias... me sirvio bastante.. muy bueno el foro y sobre todo la velocidad de las respuestas a las preguntas realizadas.

    ResponderEliminar
  25. Que tal! Les felicito por el foro. Mi consulta es:tengo 2 hojas y las necesito comparar, una hoja tiene datos de ordenes de producción y la otra tiene referencias de ordenes de salida, la columna que es común para ambas es un numero de lote. Un lote tiene una orden de producción pero muchas ordenes de venta.
    Lo que intento hacer es: en una hoja nueva que me pegue el lote,la orden de producción y las ordenes de venta. Es posible?
    Mi correo: yordy7@hotmail.com

    ResponderEliminar
  26. Hola Yordy,
    esto parece más sencillo de solucionar empleando Access y relacionando las dos tablas en una consulta; pero si yo tuviera que hacerlo en Excel, me iría a la Hoja de ordenes de venta (donde suponemos existen más registros asociados a los lotes), y desde allí con un BUSCARV sobre la Hoja ordenes de producción traería los datos de aquella relacionándolo con el campo Lote.
    Envíame un ejemplo a
    excelforo@gmail.com
    y si quieres le echaré un vistazo más en detalle.
    Slds

    ResponderEliminar
  27. Hola:
    Utilizo una sencilla tabla para llevar mis cuentas de casa. En la columna de la izquierda, una vez la oreración está realizada, le coloco un número que siempre va incrementándose de 1 en 1. Pues bien lo que me gustaría hacer es que aunque la tabla sea mayor (por debajo de la última fila numerada por mí hay otras filas rellenas pero sin numerar) el valor de la celda de la columna 'saldo' que corresponde a la misma fila que la última numerada por mí aparezca con un formato distinto pues se trata del saldo disponible.

    Muchas garcias

    ResponderEliminar
  28. Mañana subiré un post con una respuesta a tu cuestión, aplicando los Formatos condicionales con fórmula.
    Slds

    ResponderEliminar
  29. Hola,

    Necesito sustraer informacion de una serie de datos en excel 2007 y quisiera ayuda con la formula.
    En la primera columna tengo "Nº de expedicion" en la segunda tengo diferentes incidencias para los Nº de expedicion, en la tercera tengo las fechas en que ocurrienron las incidencias. Necesito extraer la fechas de una incidencia en particular por Nº de expedicion.
    "EXPEDICION" "ACCION" "FECHA ACCION" "ESTADO FINAL"
    1234567 CREADO 15/01/11 ENTREGADO
    1234567 SALIDA 21/01/11 ENTREGADO
    1234567 EN REPARTO 22/01/11 ENTREGADO
    1234567 ENTREGADO 24/01/11 ENTREGADO
    9876544 CREADO 18/01/11 ENTREGADO
    9876544 SALIDA 23/01/11 ENTREGADO
    9876544 ENTREGADO 25/01/11 ENTREGADO

    Ya lo he intentado con Buscarv, pero no he tenido exito.

    Quisiera ayuda y/o sugerencias/formulas para crear una tabla donde se ordene de esta forma:
    EXPEDICION CREADO SALIDA ENTREGADO ESTADO FINAL
    1234567 15/01/11 21/01/11 24/01/11 ENTREGADO
    9876544 18/01/11 23/01/11 25/01/11 ENTREGADO

    Gracias de antemano.

    Eric

    ResponderEliminar
  30. Hola Eric,
    sin duda lo más sencillo sería que aplicaras sobre tu base de datos una Tabla dinámica, configurándola como sigue.
    Al área de filas el campo 'Acción', al área de filas el campo ' Expedición' y 'Estado final', y agregando al área de datos el campo 'Fecha de acción', resumido por suma y formateado con tipo Fecha.
    Si eliminas los totales generales y los Subtotales que te puedan aparecer tendrás exactamente lo que quieres.
    Un saludo

    ResponderEliminar
  31. Gracias por tu pronta respuesta,

    La tabla dinamica no funciona correctamente, en algunas celdas en vez de tener la fecha tengo ##################### mientras que en el campo veo (por ejemplo) 1650065641.

    Ya cambié todas las celdas al formato de fecha, pero nada.

    Se podrá hacer algo con Buscarv?

    Gracias
    Eric

    ResponderEliminar
  32. Eric,
    si en la celda ves el valor, pero visualmente sólo #####, está bien definida, sólo prueba a ensanchar la columna.

    Con BUSCARV sería muy complicado, en todo caso, quizá con INDICE y COINCIDIR... pero de verdad, es mucho más sencillo con Tablas dinámicas. Yo he replicado el ejercicio y funciona...
    Mañana subiré un post explicando como.
    Un saludo

    ResponderEliminar
  33. Hola a todos, tengo un problemilla; tengo tres hoja: Datos, Aportaciones y Control, en DATOS estan los datos generales de clientes cada uno le he asignado un código; en APORTACIONES tengo CÓDIGO, MES, DEPÓSITO,FECHA; y en CONTROL la he diseñado para que cuando ingrese el Código del Cliente me muestre datos como: Nombres, DNI que se encuentran en la hoja datos, use CONSULTAV y funciona excelente, ahora líneas abajo he colocado los campos: MES | DEPÓSITO | FECHA para que me muestre el mismo cliente de código que ingrese líneas más arriba con los Meses de aportación, me devuelve unicamente un mes el primero que encuentre, sin embargo si un cliente pago 2 ó + meses no muestra los siguientes. Espero me haya explicado bien, necesito una ayuda urgente. GRACIAS a todos a quienes me puedan ayudar y que Dios los bendiga a cada uno.
    CAGQ.

    ResponderEliminar
  34. Hola, sabes que tengo una duda. Tengo una hoja de excel con cinco columnas, la primera es el numero identificador de una persona, la segunda el numero del proyecto, la tercera el año del proyecto, la cuarta del mes del proyecto, y la quinta el numero de horas que trabajo la persona en el proyecto. lo que tengo que hacer es que en otra hoja ingresando los valores del numero identificador de una persona especifica, el numero del proyecto especifico, un año especifico y un mes especifico me retorne el valor de las horas que trabajo en ese proyecto en ese año y ese mes que ingresé, es decir necesito hacer coincidir 4 valores que yo determino para que me retorne el valor de las horas, pero quiero hacer eso con una formula no con filtro porque es muy lento.
    Muchas Gracias,

    Mae

    ResponderEliminar
  35. Hola Mae,
    pues para realizar esa búsqueda con funciones deberás aplicar de forma matricial la siguiente fórmula. Suponiendo que a tu origen de datos le hayas asignado nombres a cada una de las columnas ('Identificador', 'NumProy', 'Año', 'Mes' y 'Horas'), y que en otra Hoja dispones de los valores a buscar:
    A1 = identificador a buscar
    B1 = Número proyecto a buscar
    C1 = Año a buscar
    D1 = Mes a buscar
    Entonces la función será:
    {=SUMA(SI(Identificador=A1;SI(NumProy=B1;SI(Año=C1;SI(Mes=D1;Horas)))))}
    Recuerda ejecutarle de forma matricial (Ctrl+Mayusc+Enter).
    Espero te sea útil.
    Slds

    ResponderEliminar
  36. Hola Finart,
    la verdad es que únicamente con la función CONSULTAV no vas a poder conseguir lo que pretendes, ya que esta función, al igual que la mayoría, devuelven un sólo valor, en tu caso que requieres obtener varios elementos después de una búsqueda tienes varias opciones (no muchas) o bien empleas funciones matriciales o bien empleas tablas dinámicas, aprovechando las posibilidades de filtros de éstas.
    Habría que ver cómo está estructurado tanto el origen de datos (si me ha quedado claro con tu explicación) como dónde y de qué manera deseas obtener los registros que cumplan las condiciones de la búsqueda. También sería factible realizar un Autofiltro sobre el origen de datos.
    Espero haberte orientado de alguna manera.
    Un cordial saludo.

    ResponderEliminar
  37. Muchas gracias!!! me sirvió mucho tu ayuda =)

    ResponderEliminar
  38. SALUDOS, NECESITO BUSCAR DE MI TABLA DE DATOS EN EXCEL UNA FAMILIA COMPLETA CON EL NRO DE EL JEFE DE FAMILIA QUIERO QUE ME APARESCA TODA LA FAMILIA COMPLETA, EJ: DATO DE ENTRADA 1111111, Y DEVUELVE DATOS DE ESA PERSONA, PERO TAMBIEN QUIERO QUE ME DEVUELVA LOS OTROS FAMILIARES COMO ESPOSA HIJOS Y SUEGROS, CON SU CI Y DATOS O CAMPOS... COMO LO HAGO???

    ResponderEliminar
  39. Hola,
    si puedieras enviarme un ejemplo a excelforo@gmail.com
    le echaría un vistazo y buscaría una solución.
    Slds

    ResponderEliminar
  40. Hola buenas noches,por fa necesito me ayuden con una fórmula en excel que me permita buscar los valores duplicados y rellenarlos en color. Estoy utilizando la fórmula "Buscav" asi: Buscarv(B2,C2:C345),2,falso) y me devuelve el valor de la segunda columna. Cómo podría hacer para que en lugar de colocarle el "2" despues de la matriz donde va a buscar, me duvuelva "verdadero". Lo que estoy intentando hacer es buscar valores duplicados. Muchas gracias por lo que puedan ayudarme.

    ResponderEliminar
  41. Hola,
    para buscar elementos duplicados, puedes optar por aplicar la herramienta formato condicional, en Excel 2007 y 2010 aparece una opción para ello, en versiones anteriores podrías realizarlo siguiendo las instrucciones de:
    http://excelforo.blogspot.com/2009/06/formato-condicional-con-formula.html
    también te puede servir
    http://excelforo.blogspot.com/2010/03/elementos-duplicados-en-campos.html
    Respecto a la función BUSCARV que propones, me imagino que si te devuelve un valor si estará duplicado y si te devuelve #N/A no existe, por tanto, si quieres emplear esta función deberás tratarla un poco; por ejemplo:
    =NO(ESERROR(Buscarv(B2,C2:C345),2,falso)))
    de tal forma que primero realiza la búsqueda, después evalua si es error (no existe el valor buscado):VERDADERO o no (está duplicado):FALSO; y finalmente la función NO convierte F en V, y V en F, por tanto, cuando encuentre un valor dupliado, con la función anidada obtendrás el VERDADERO que buscabas.
    Espero te sirva.
    Slds

    ResponderEliminar
  42. Antes que nada excelente el tiempo de respuesta del foro ante inquietudes o problemas que nos surgen.

    Ahora si, quisiera saber si en una tabla dinamica puedo poner una imagen.
    ejemplo:
    La tabla me trae un codigo y quisiera que al lado este la imagen de ese codigo, logicamente la imagen deberia estar asociada al codigo.
    Saludos y aguardo su respuesto

    ResponderEliminar
  43. Saludos y gracias por tus palabras... intento responder en un tiempo razonable y siempre que mi trabajo me lo permite.
    Respecto a tu cuestión no creo posible incluir imágenes dentro de una tabla dinámica... en todo caso, si la estructura de TD es fija, quizá se pudiera generar una macro que barriera el campo de los 'codigos' en el rango resultante de la TD, para que en una segunda etapa la macro asignara las imagenes correspondientes...
    De todas formas investigaré sobre el tema, a ver si es posible tal cosa.
    Slds

    ResponderEliminar
  44. Gracias por tu respuesta, me imaginaba cual seria la respuesta, mi idea alternativa es que la tabla dinamica me traiga los codigos que necesito y una macros me traiga la imagen donde elija situarla (logicamente fuera de la tabla dinamica).Mí problema sería como hago para que la macros tome un código de la tabla y busque la imagen que le corresponde al código. ya que no siempre será el mismo código que seleccionare.
    si me podes dar una mano te lo agradecería mucho.
    Saludos,

    ResponderEliminar
  45. Subiré próximamente una explicación de cómo asociar una imagen al valor de una celda.
    Slds

    ResponderEliminar
  46. Gracias, he visto el post de asociar un a imagen al valor, ahora bien yo estoy usando excel 2003 en el trabajo, si sos tan amable me podrias decir si lo que explicaste en el post me sirve para la versiones anteriores, y en caso que no, como se podria hacer.
    Desde ya muchas gracias

    ResponderEliminar
  47. Hola,
    efectivamente funciona exactamente igual en versiones anteriores, lo he probado por que no estaba muy seguro.
    En cualquier caso recuerdo que había otra forma de realizar lo mismo de una manera algo más sencilla en Excel 2003.
    Subiré en breve la forma de realizar esta misma operación.
    Un saludo.
    P.D.: también explicaré en otro post cómo realizar operaciones similares con macros.

    ResponderEliminar
  48. Hola,
    estoy haciendo un trabajo y no me sale la dichosa formula.
    Tengo una tabla con: sueldo, nº hijos, y %IRP
    Otra con los porcentajes que se deberian de aplicar segun el sueldo y el número de hijos.
    Necesito aplicar Burcarv, para rellenar la columna del %IRP, segun la segunda tabla.
    El problema creo que lo tengo con el valor lógico, no me sale

    ResponderEliminar
  49. Hola,
    creo que deberías echar un vistazo a esta entrada
    http://excelforo.blogspot.com/2009/11/funcion-definida-por-el-usuario-el-si.html
    donde se explica un ejemplo de cálculo sobre una tabla, me imagino, similar a la tuya.
    Se detalla una función anidada con el SI condicional...
    Coméntame si te sirve, si no es el caso, envíame un ejemplo a
    excelforo@gmail.com
    Slds

    ResponderEliminar
  50. Hola. Con la función BUSCARV, se necesita sacar la disponibilidad de los doctores, presentando si estan en X no disponible y en 0 si está disponible y que se varie según el nombre y turno digitado. Los datos que me dan son los siguientes:
    1. una tabla en donde en una columna contiene el numero de turno y otra columna la hora (son 4 turnos)
    2. Un tabla que contiene en una columna el apellido de los medicos y 4 columnas seguidas con los diferentes turnos. El contenido son "x" y "o"
    3. Una tabla final de 2 columnas y 4 filas, en donde dígito en la primera fila el apellido del medico, segunda fila el numero del turno (1 al 4), en la fila siguiente mediante buscarv hallo la hora correspondiente al numero del turno y finalmente n la ultima fila debe aparecer X o O conforme a la disponibilidad del medico (según tabla 2), puedo hacer esto usando solo la formula buscarV?

    Gracias - Niko

    ResponderEliminar
  51. Hola Niko,
    mejor envíame a
    excelforo@gmail.com
    el ejemplo en un fichero Excel, con el que poder trabajar.
    En todo caso, te adelanto, que probablemente necesites combinar las funciones COINCICIR e INDICE.
    Slds

    ResponderEliminar
  52. Hola buenos dias, estoy queriendo usar la funcion BUSCARH en varias filas pero cuando copio para abajo la formula siempre queda como 2 la fila buscada y necesito que sea 3, 4, 5 ,6 etc. Es decir a medida que copio para abajo mi formula cambie la fila, se entiende? muchas gracias, saludos desde Argentina!!! Nora

    ResponderEliminar
  53. Hola Nora,
    podrías sustituir el índice de la fila buscada por otra fórmula que te devuelva el valor; yo suelo emplear la de FILA o FILAS.
    Por ejemplo,
    =BUSCARH("valor";matriz_búsqueda;FILA();0)

    sin ver la estructura de tu búsqueda no puedo ser más concreto.
    Slds

    ResponderEliminar
  54. que tal buenas noches, mi problema es que el sistema de punto de venta Aspel me entrega la información de inventario en formato de Excel, lo puedo abrir si problema, esa misma información la utilizo para una búsqueda vertical de cualquier campo que requerimos como descripción, precio mayoreo precio menudeo, existencias etc. si copio una celda del código en la hoja de excel del inventario y la pega la búsqueda me entrega un resultado correcto, peso si la tecleo o la ingreso con un lector de condigo de barras no me entrega ningún resultado, no se si mi problema es el formato de Aspel, solicito tu valiosa ayuda Gracias

    ResponderEliminar
    Respuestas
    1. Hola Symbolcam,
      desconozco el sistema Aspel en particular; pero esos sistemas de lectura de datos, suelen generar problemas por que toman los datos en formatos diferentes, por lo que a la hora de realizar búsquedas o cualquier otra operación sobre ellos no los reconocen, que parece es lo que te pasa a ti.
      Te recomendaría te aseguraras del formato en que el lector te pasa los datos a Excel, para que cuando necesites operar sobre estos datos 'importados', o bien los trates convirtiéndolos o bien operes en el mismo formato importado.
      Lo siento pero poco más puedo decirte.
      Un saludo y Mucha suerte!!

      Eliminar
  55. hola buenas tardes, mi situacion es la siguiente, tengo en una hoja de excel como tabla de 13 columnas x 34 filas los INPC que es la que quiero como matriz pero mi formula no me da el valos desiado
    =SI(C16>0,SI(BUSCARV((AÑO(C24)),INPC,MES(C24)+1)=0,BUSCARV((AÑO(C24)),INPC,MES(C24)+1),BUSCARV((AÑO(C24)),INPC,MES(C24)+1)=0),0)
    por que en mi hoja de recargos y actualizaciones necesito buscar el valor por año y des pues por mes

    ResponderEliminar
    Respuestas
    1. Hola,
      es dificil concretar con los datos que ofreces; supongo que en la C, parte de la tabla 13x34 que has nombrado INPC, tienes dispuestas ciertas FECHAS, y a continuación en las 12 columnas restantes tienes los datos por MESES, si este es el caso; suponiendo las referencias correctas, tu fórmula debería tener quizá esta forma:
      =SI(C16>0,SI(BUSCARV((AÑO(C24)),INPC,MES(C24)+1,1)=0,0,BUSCARV((AÑO(C24)),INPC,MES(C24)+1),1),0)
      donde indicamos que si C16 > 0 y si el valor del mes buscado en INPC correspondiente al año de la fecha de C24, entonces que aparezca 0, en caso contrario que muestre el valor del mes que corresponda al año de C24.
      Ya te digo que es difícil hacerse una idea de que pretendes...
      Espero haberte orientado al menos.
      Un cordial saludo

      Eliminar
  56. Buenas

    Como podria hacer para que de una base de datos con clientes, y varios locales de venta (o sea que cada local de venta tiene sus propios clientes), seleccionando un local que me traiga los numeros de clientes de mayor venta

    ResponderEliminar
    Respuestas
    1. Hola,
      echa un vistazo a este post del blog
      http://excelforo.blogspot.com.es/2012/05/vba-macro-para-obtener-rango-de-celdas.html
      creo te puede servir, si modificas algo el código. En el se explica cómo mediante una macro puedes obtener información condicionada.
      Si no quieres usar macros, podrías extraer esa información, de manera muy sencilla, mediante el uso de una Tabla dinámica, llevando el campo local al área de Filtro, el campo Cliente al área de filas, y las Ventas al área de datos, aplicando un Filtro tipo 'Diez mejores', y configurándolo para obtener el número que quieras de mayores ventas.
      Puedes ver algo parecido en
      http://excelforo.blogspot.com.es/2012/05/como-construir-rangos-con-formulas.html
      Un saludo

      Eliminar
  57. Hola a todos!
    Tengo un problemilla al que le he estado dando vueltas y no logro resolver a ver si me podéis ayudar porfa!
    Estoy haciendo una tabla para llevar un control de ventas y el tema es que hay un campo al que he denominado "Producto" y le he asignado una validación para que se despliegue los productos que tengo en otra planilla denominada "lista de Precios". Ahora bien, mi problema surge cuando quiero que haga lo siguiente: que cuando seleccione un producto de la lista desplegable, automáticamente me ponga en otras columnas, los campos relacionados con este producto es decir: capacidad (ml), PVM, PVP. Todos estos datos están en la planilla "Lista de Precios"
    Un saludo y gracias de antemano por la ayuda,
    Gabriel

    ResponderEliminar
    Respuestas
    1. Hola Gabriel,
      lo primero sería necesario si independientemente del valor del 'Producto' siempre tendrá asociados exclusivamente tres valores (capacidad, PVM y PVP); si es así, he de suponer que esa relación entre Producto y los otros tres campos la tienes fijada en alguna otra tabla-directorio.
      Siendo de esta manera, podrías asociar en tu tabla 'control Ventas' con una función BUSCARV que busque el Producto seleccionado en esa tabla-directorio y te devuelva el valor correspondiente de la columna 'calidad¡, 'PVM' ó 'PVP'.
      También lo podrías hacer con una combinación de las funciones INDICE y COINCIDIR...
      Busca en el blog por que hay mucho ejemplos de esto.
      Slds

      Eliminar
    2. Hola amigo!
      Muchísimas gracias por tu consejo, me ha servido mucho y he podido solucionar el problema que tenía!
      Saludos
      Gabriel

      Eliminar
  58. Hola nuevamente!
    Se me ha planteado una duda y quería consultaros a quienes tienen mas experiencia con excel a ver si me pueden ayudar. El tema es que he hecho una tabla para el seguimiento de ventas que incluye listas desplegables y funciones de validación y otras fñormulas y el tema es que me interesa poder utilizarla en un tablet con Android. Las aplicaciones que he bajado me dejan ver la tabla pero me anulan todas las funciones por lo que no me sirve. Existe alguna aplicación que me deje ver la planilla con todas sus funciones.
    Un saludo y muchas gracias!
    Gabriel

    ResponderEliminar
    Respuestas
    1. Hola Gabriel,
      ahí poco puedo ayudarte, ya que desconozco bastante del tema...
      pero busca, por que me parece que existe una versión de QuickOffice para Android, que supongo permitiría y habilitaría todas sus funcionalidades.
      Siento no poder ayudarte con esto.
      Slds

      Eliminar
    2. Gracias de todas formas!
      Saludos

      Eliminar
  59. Hola buenas buen día, en este momento me encuentro realizando una hoja de Excel 2007, en la cual realizo un reporte de venta diaria con los siguientes conceptos, venta numero columna A, tipo de cliente (taller o mostrador) Columba B, descripción del producto Columna C, cantidad columna D, Precio unitario columna E, total columna F, Nombre del cliente Columna H, y por último nombre de la negociación columna I. Mi pregunta es la siguiente, ¿Cómo le puedo hacer para que se diferencie el tipo de precio que deba registrarse en el precio unitario para un taller o para un cliente de mostrador?
    Tengo los precios por separado en una hoja aparte
    Que formula o como le puedo hacer para que al momento en que capturo el código del producto me indique el precio de venta correcto.
    Lo que quiero hacer es lo siguiente:
    En la columna B, señalar si es C= cliente y T= taller, para que de la hoja5, me indique el precio por cobrar, ya que como lo mencione en líneas anteriores, el precio de clientes es uno y el de taller es otro.
    De antemano muchas gracias.

    ResponderEliminar
    Respuestas
    1. Hola,
      bueno, la cosa es sencilla, se trata de anidar un BUSCARV dentro de un SI que dirija a una tabla u otra dependiendo de si el cliente es C ó T.
      Echa un vistazo a
      http://excelforo.blogspot.com.es/2009/06/un-ejemplo-de-buscarv-sobre-dos-tablas.html
      en esta entrada verás un ejemplo casi idéntico a tu planteamiento.
      Espero te sirva.
      Slds

      Eliminar
  60. Hola. Necesito una ayuda. Necesito eztraer un conjunto de registro de una columna en excel, cuyos registros estan asociados a un numero de cedula. Cada cedula contiene una cantidad de registros ordenados por fechas y son esos los que necesito, proque si lo hago con buscarv me trae el primero que encuentra. y no todos.

    ResponderEliminar
    Respuestas
    1. Hola,
      ¿has pensado en aplicar la herramienta de Autoiltro o filtro Avanzado?. Simplemente seleccionas sobre la columna de Fechas que comentas los criterios que deses cumplir.
      Para aplicar fórmulas como BUSCARV u otra, habría que conocer la estructura de datos de tu hoja.
      Espero haberte dado la idea.
      Slds

      Eliminar
    2. Hola, pero con AutoFiltro o filtro Avanzado no me sirve
      Tengo un hoja de datos con los datos basicos de un personal donde esta su numero de cedula
      En otra hoja de dato tengo sus movimientos (cargos) durante su estadia en la empresa, muchos tienen hasta 6 movimientos en diferentes años, en esta hoja solo esta la cedula, los movientos (cagos) y las fechas de cada movimiento.
      Pero como tengo muchos registro yo quisiera hacer un cruce con la cedula como criterios de bsqueda y me traiga todos los moviemientos de esas cedulas, sin tener que hacerlo con buscar uno por uno.
      Espero me haya explicado esta vez.

      Eliminar
    3. Hola!
      bueno, sin ver el fichero, con la explicación que das de tu problema, parece que necesitarías aplicar una macro que recorra esas 'cedulas' en una y otra hoja, extrayendo de una sóla vez los registros que indiques...
      Si me envías el fichero a
      excelforo@gmail.com
      le puedo echar un vistazo y orientarte.
      Slds

      Eliminar
  61. una pregunta

    Tengo una bd de nomina por semana, en donde viene varia información.
    En otra hoja quiero traer informacion con la opcion de buscar, con una key unica como su numero de nomina, la pregunta es, como le hago para que aparesca una frase de Trabajador no existe, en dado caso que al proporcionar el numero de nomina no este dentro de la bd, porque actualmente me trae el valor anterior

    Saludos

    ResponderEliminar
    Respuestas
    1. Hola Mauricio,
      lo bueno que tiene la función BUSCARV es que cuando no encuentra el valor buscado en la matriz de búsqueda devuelve un error, por lo que podremos aprovecharnos de esta situación. Yo utilizaría la función
      =SI.ERROR(BUSCARV(numero_nomina;BDNominas;columna;0);"Trabajador no existe")
      siendo numero_nomina la Clave de la que hablas y BDNominas las Base de datoss semanal, el argumento columna sería el indicador de columnas de la BD que quieres obtener. Lo importante en este caso es que pongas 0 o FALSO para obtener una coincidencia exacta de la búsqueda.
      Slds

      Eliminar
  62. Hola,necesito por favor tu ayuda para el siguiente probelma:tengo una tabla de cuatro columnas, en la que la primera es de fechas de un mes ordenadas. En la cuarta columna tengo una serie de valores, entre los que tengo que seleccionar el mayor de la columna y; aquí viene el problema, seleccionar la fecha que corresponde a ese valor máximo. No puedo usar BUSCARV porque no trabaja de izquierda a derecha. Probé con BUSCAR, pero no me funciona porque la columna de los datos no está ordenada, requisito de esta función para la búsqueda. ¿Cómo puedo hacer esta búsqueda? Muchas gracias

    ResponderEliminar
    Respuestas
    1. Hola JHVI,
      bueno, tendría que construir una fórmula anidada con las funciones K.ESIMO.MAYOR, COINCIDIR e INDICE.
      Con K.ESIMO.MAYOR encuentras el valor máximo, con COINCIDIR determinas la posición (la fila en que se encuentra), y con INDICE la Fecha buscada.
      Suponiendo las columas con datos A:D (Col A con Fechas y Col D con los valores), en la celda E1 introduces la fórmula:
      =INDICE(A:A;COINCIDIR(K.ESIMO.MAYOR(D:D;1);D:D;0))

      La fórmula está pensada para el caso en que no haya valores máximos repetidos.
      Espero te sirva...
      Slds

      Eliminar
    2. Muchisimas gracias por tu atención. Voy a probar tu respuesta

      Eliminar
  63. Hola, ojalá pudieran ayudarme con este tema: tengo una función que viene a ser un buscarv, pensaba que usándola podría evitar el inconveniente de que no recoge datos repetidos en un listado, pero tiene el mismo fallo. ¿Se podría modificar de alguna manera para que me devolviera también los registros repetidos?

    Función:
    'función que busca un valor dado en el rango A2:C460.
    Function busqueda(valor)
    'c recorre las columnas de la matriz, de la 1ª a la 26ª (o el número que sea).
    For c = 1 To 26
    ' f recorre las filas de la matriz, de la 2ª a la 460ª (o las que sean).
    For f = 2 To 460
    If Cells(f, c).Value = valor Then busqueda = Cells(f, 18).Value
    Next f
    Next c
    End Function

    El caso es que necesito que me recoja todos los valores, tanto si el valor a buscar está repetido como si no. Si está repetido, por ejemplo tres veces, ¿se podría hacer que, en vez de devolver un sólo valor, devolviera uno por cada vez que aparece el valor repetido? Espero haberme explicado bien. Gracias por adelantado.

    ResponderEliminar
    Respuestas
    1. Hola, quizá podrías probar con lo explicado en
      http://excelforo.blogspot.com.es/2012/03/vba-objeto-collection-para-lograr.html.

      La idea es la misma... si lo desarrollas en forma de función, tendrías que ejecutar matricialmente la función creada.
      Slds

      Eliminar
  64. Gracias por contestar tan rápido.
    el caso es que necesito justo lo contrario, en este ejemplo se omiten los elementos repetidos, yo necesito conservarlos. Pongo un ejemplo:

    CODIGO1 CD0001 ATRIBUTO1 ATRIBUTO2
    CODIGO1 CD0002 ATRIBUTO1 ATRIBUTO2
    CODIGO1 CD0003 ATRIBUTO1 ATRIBUTO2
    CODIGO2 CD0004 ATRIBUTO1 ATRIBUTO2
    CODIGO3 CD0005 ATRIBUTO1 ATRIBUTO2
    CODIGO3 CD0006 ATRIBUTO1 ATRIBUTO2

    En otro listado tengo los mismos códigos de la primera columna, necesito indentificarlos (diferenciandolos, porque aunque el código se repite, que sería, por ejemplo, el nombre, el código de la segunda columna es diferente, y los atributos son diferentes en función de esta segunda columna. Quizá me estoy complicando mucho y no es tan difícil. Pero no se me ocurre cómo hacerlo.

    ResponderEliminar
    Respuestas
    1. Bueno, entonces lo que hace los registros únicos es la combinación de los dos primeros campos, asi que podrías unirlos (concatenarlos) para verificar si existen o no aplicando el mismo código VBA...
      Slds

      Eliminar
  65. Hola. Nuevamente acudo a ti por un problema en Excel al que no le encuentro respuesta. Para simplificar digamos que tengo tres columnas con por ejemplo 500 datos. En A Y B están los datos y C es una columna con un criterio de selección. Aplicando un autofiltro y el criterio de búsqueda, me quedan en una fila los dos datos seleccionados. Digamos que corresonden al registro 185. Pero no encuentro la forma de que, al mismo tiempo esos dos datos aparezcan en dos celdas fuera de la tabla, pero sin referencias de celda. Necesito que así sea para que en otra búsqueda si por ejemplo los datos corresponden a la fila 16, sean tomados también en las dos celdas fuera de la tabla, reemplazando los datos anteriores. He probado con fórmulas y también con macros, pero siempre los datos copiados aparecen fuera de la tabla con referencia de celdas y en consecuencia ya no me sirven para una nueva búsqueda. Hasta ahora me he arreglado con CtrlC y CtrlV, pero como el trabajo es muy largo, usar un procedimiento manual en cada caso hace lenta la tarea. El programa que estoy usando está todo en Macros, salvo este paso. Gracias por tu ayuda

    ResponderEliminar
    Respuestas
    1. Hola JHVI!!
      podrías emplear (es un poco más tedioso-muy poco) el filtro avanzado,que aunque requiere tener un rango de criterios, te permite copiar los valores (sin fórmulas ni referencias) donde tu quieras.
      Y si lo haces con autofiltro en lugar Ctrl+C y Ctrl+V, haz copiado y Pegado especial > Valores.
      Creo que te puede servir.

      Con macros diría que si usas la propiedad .Value no debería copiarte referencias!?.

      Slds

      Eliminar
  66. HOLA QUIERO HACER UN ARCHIVO EN EXEL QUE ME PERMITA VALIDAR SI EL DATO DE UNA COLUMNA SE REPITE Y SI ES AFIRMATIVO QUE LO SUME JEMPLO

    TENGO DOS COLUMNAS EN UNA CODIGO DEL ART EN LA OTRA CANTIDAD (EXISTENCIA)
    QUIERO QUE LA FUNCION BUSQUE SI SE REPITE LA CLAVE DEL ARTICULO Y SI SE REPITE QUE ME SUME LA EXISTENCIA Y BORRE EL QUE SE REPITE (QUE SOLO DEJE UNO CON LA SUMA DE TODOS) SE PODRA

    ResponderEliminar
    Respuestas
    1. Hola,
      si claro sería posible... generando una función personalizada con VBA.
      pero se necesitaría saber si pueden existir dos o más código repetidos.

      Por lo que creo que lo más sencillo sería aplicaras una Tabla dinámica sobre tu tabla, llevando el campo Codigo al área de filas y la cantidad al área de valores.
      Con esto obtendrías un listado de artículos únicos con el acumulado de existencias.
      Slds

      Eliminar
  67. Hola tengo un problema que no consigo solucionar.

    tengo en una hoja de b5:c56 en la columna b tengo categoria (n) y en la columna c tengo el nombre (antonio) y lo que me gustaria es que en la casilla b61:b80 me busque en b5:c56 la categoria y me devuelva el nombre , ya que con buscarv solo me copia el primer valor encontrado repetido todas las veces .


    lo que me pasa es que de b61;b80 si pongo categoria n me sale solo el nombre de antonio y no todos los demas.

    nose si me explique bien y muchas gracias de antemano.

    ResponderEliminar
    Respuestas
    1. Hola Francisco...
      bueno, por lo que he entendido, tienes dos columnas (una con categorías y otra con nombre), y quieres conseguir en B61:B80 el nombre... pero no sé sobre que valor (categoría) quieres relacionarlo??
      Puedes enviarme el fichero a
      excelforo@gmail.com
      y lo reviso mejor.
      Slds

      Eliminar
  68. Hola buenas noches, favor alguien ayudeme. Tengo una tabla de datos en donde tengo que buscar el nombre de determinado producto en 03 matrices; 02 de ellas en forma vertical por lo cual lo mas recomendable es aplicar BUSCARV Y 01 tabla en forma horizontal por lo cual tengo que aplicar BUSCARH.Ahora bien este nombre puede estar en cualquiera de las 03 tablas razon por la cual necesito una formula generalizada y asi buscar dicho nombre en cualquiera de las 03 tablas.Si me deje entender les agradezco mucho!!!

    ResponderEliminar
    Respuestas
    1. Hola,
      si sólo son tres tablas podrías aplicar una fórmula condicionada, pasando por orden por estas tres tablas hasta que encuentre el nombre buscado.
      si la tabla1 es la horizontal y la tabla2 y tabla3 verticales, y suponiendo, como dices, son aplicables las funciones BUSCRAV y BUSCARH, entonces la fórmula podría ser:
      =SI.ERROR(BUSCARH(producto;Tabla1;2;0);SI.ERROR(BUSCARV(producto;Tabla2;2;0);SI.ERROR(BUSCARV(producto;Tabla3;2;0);"")))

      Estamos suponiendo para las tres tablas el nombre se encuentra en la segunda columna o fila de las tablas, y que por supuesto, el producto está en la primera fila/columna.
      Slds

      Eliminar
  69. hola, mi pregunta es como hago para que excel me busque un dato en formato texto y me lo muestre en una celda determinada? desde ya gracias

    ResponderEliminar
    Respuestas
    1. Hola,
      no especificas demasiados datos, pero para encontrar valores (texto o numéricos) existen varias funciones, como BUSCAR, BUSCARV, BUSCARH, COINCIDIR...
      Sólo tienes que escribir la función en la celda 'determinada' que quieras y referenciar los argumentos de la función en los rangos donde estén el dato.
      Siento no poder ayudarte más...
      Slds

      Eliminar
  70. hola necesito ayuda tengo dos hojas de excel en una tengo columas (4) codigo descripcion unidad existenca en la otra hoja los mismos conceptos quiero en plear buscarv que cuando escriba la descripcion me arroje automaticamente el codigo gracias por su ayuda

    ResponderEliminar
    Respuestas
    1. Hola,
      por el orden en que comentas están las columnas, no es posible emplear la función BUSCARV, habría que emplear INDICE y COINCIDIR.
      Si suponemos que las descripciones son únicas y corresponden a cada Código.
      La fórmula sería:
      =INDICE(rango_código;COINCIDIR(descripción_buscada;rango_descripcion;0))
      Slds

      Eliminar
    2. excelforo gracias por contestar tambien ya emplee indice y coincidir al menos que este introduciendo mal la formula
      mi ejemplo es en una hoja tengo:
      A B C D
      codigo descripcion unidad existencia
      RA1002 ABRAZADERA ROTOCHAMBER PZA 1
      RA1003 ACOPLAMIENTO 5L8968 PZA 2

      y en la otra hoja quiero que cuanda ingrese la descripcion me arroje el codigo

      codigo descripcion unidad existencia
      ? ABRAZADERA ROTOCHAMBER

      DE ANTE MANO POR TU AYUDA LAS GRACIAS ANTICIPADAS

      Eliminar
    3. Hola,
      la fórmula es la que te comenté más arriba:
      =INDICE(rango_código;COINCIDIR(descripción_buscada;rango_descripcion;0))
      Tendría que ver cómo la has escrito y los nombres de las hojas para saber en qué está fallándote.
      UN cordial saludo

      Eliminar
  71. Hola, como estas? te hago una consulta:
    Tengo que, utilizando un buscarv, buscar un dato entregado por otro buscarv en una hoja diferente.

    hay alguna manera de hacerlo?

    Te dejo mi email para que puedas contactarme:
    Fede1840@hotmail.com

    Muchas gracias.

    ResponderEliminar
    Respuestas
    1. Hola Feder,
      si claro, se trata de anidar el valor devuelto por un BUSCARV como valor buscado en otro BUSCARV, sería algo así:

      =BUSCARV(BUSCARV(valorbuscado1;matrizbusqueda1;2;0);matriz busqueda2;3;0))

      siendo valorbuscado1 y matrizbusqueda1 lo que se encuentra en la hoja diferente, y el 2 y el 3 el indicador de columna para obtener la correspondecia dentro de la matriz de búsqueda.

      Espero te sirva.
      Slds

      Eliminar
  72. Estimado les cuento mi problema.

    Tengo una pistola de codigo de barra que me arroja valores, por ejemplo(columna A) 1575158-QR'6 incluyento un "enter" por lo cual salta a la siguiente fila dentro de la misma columna y se pueden seguir ingresando mas codigos...

    Mi problema es que en la otras columnas tengo los datos que necesito que me salgan en una nueva columna E (por ejemplo) diciendome si el valor que ingreso en la columna A esta en la columna C y además (como se repiten los valores en la columna C) que me diga lo que esta asociado a la columna D del valor de C
    Columna C Columna D
    1575158-QR'6 AR-PB-OES
    1575158-QR'6 AR-CU-OES
    1575158-QR'6 AR-ZN-OES
    1594344-QR'6 AR-AS-OES
    1594344-QR'6 AR-AL-OES
    1595324-QR'6 AR-NI-OES
    1595324-QR'6 AR-MO-OES
    1595324-QR'6 AR-CD-OES
    1635431-QR'6 AR-PB-OES

    Yo tengo puesto algo como esto

    =SI(ESNUMERO(COINCIDIR(A7;C:C;));"falta Ensayo";"")

    Pero solo me analiza lo que ingreso en A y me lo compara con toda la columna C y me dice "falta Ensayo"...

    A mi me gustaria saber si se puede hacer que en vez de decir solamente "falta Ensayo" me diga que ensayos de la columna D me faltan...

    Osea algo como esto


    Columna A Columna C Columna D Columna E
    1594344-QR'6 1575158-QR'6 AR-PB-OES AR-AS-OES,AR-AL-OES
    1595324-QR'6 1575158-QR'6 AR-CU-OES AR-MO-OES,AR-MO-OES,AR-CD-OES
    2004500-QR'6 1575158-QR'6 AR-ZN-OES "nada"
    1594344-QR'6 AR-AS-OES
    1594344-QR'6 AR-AL-OES
    1595324-QR'6 AR-NI-OES
    1595324-QR'6 AR-MO-OES
    1595324-QR'6 AR-CD-OES


    Muchas gracias de antemano...

    Atte.

    Diego Baeza.

    ResponderEliminar
    Respuestas
    1. Hola Diego,
      por lo que entiendo, lo que requieres es un listado de 'no coincidencias' según un valor determinado.
      En principio te diría que el asunto es bastante complicado con fórmulas, ya que no tenemos nunca un número de 'faltas de ensayos', por lo que nunca obtendríamos un listado finito de elementos.

      Quizá, dependiendo del número de elementos del listado original, fuera factible realizar esa búsqueda con macros; aunque se necesitaría un estudio en profundidad de las condciones del fichero.

      Un saludo

      Eliminar
  73. Buenas a tod@s..Mi prg seria si me puedes decir alguna pagina donde aparezcan ejercicios de excell, Buscarv/ Tablas dinamica/ Suma resta y Suma si,Gracias.

    ResponderEliminar
    Respuestas
    1. Hola...
      no creo hay ninguna página donde específicamente se traten esas funciones, pero puedes entrar en:
      http://excelforo.blogspot.com.es/search/label/Funciones
      y
      http://excelforo.blogspot.com.es/search/label/Tabla%20din%C3%A1mica
      Aquí encontrarás diferentes ejemplos explicados de esas y otras funciones.
      Slds

      Eliminar
  74. Hola.Tengo que hacer un trabajo con la funcion buscarv y no consigo haerlo bien me podria ayudar?? se trata de una tabla de articulos donde me da el nombre del articulo el codigo y el precio y en otra tabla tengo el codigo y las unidades y tengo que calcular el bruto descuento neto e IVA el principal problema lo tengo con el bruto ya que sin eso no puedo clacular el resto y tampoco si lo sabria hacer pero si ya me puede dar pistas sobre el resto tambien se lo agradezco. Muchas gracias

    ResponderEliminar
    Respuestas
    1. Hola,
      supongo que tienes que emplear el precio de la primera tabla -Tabla1- (cod, nombre, precio) en la segunda -Tabla2- (cod, uds).
      Entoences en la tabla2, en la celda correspondiente de Precio, escribirías:
      =BUSCARV(código; Tabla1;3;0)
      siendo código la celda de la misma fila de la Tabla2 correspondiente al código del artículo. Es importante que la Tabla 1 tenga esos tres campos en el orden comentado (cod, nombre, precio).
      El campo Descuento supongo que lo tendrás que determinar tu, para aplicar el Neto como fórmula
      =Bruto-Descuento
      y finalmente el campo IVA, aplicar el producto sobre el Neto
      =Neto*21%

      Espero lo veas algo más claro ahora.
      Slds

      Eliminar
    2. gracias pero sigo sin conseguirlo no lo entiendo la verdad, no se que es lo que hago mal porque los datos son tal cuales me los da el ejercicio y al aplicar la funcion de buscar me da error siempre.Necesito sacar el bruto multiplicando las unidades por el precio pero atraves de la funcion Buscarv.Le pongo el ejercicio tal cual me lo dan a ver si consigo saber donde fallo.Muchas gracias

      Artículos

      Nombre Código Precio
      Escritorio E01 60,5 Tipo de descuento 8%
      Estanteria E02 70
      Lámpara L03 43,76 Tipo de IVA 21%
      Mesita M04 26,7
      Sofá S01 450,65
      Cama C05 287


      Ventas del almacen

      Código Unidades Bruto Descuento Neto I.V.A. Total
      E02 65
      M04 125
      E01 54
      L03 134
      C05 77
      S01 42
      S01 7
      E01 19
      C05 2
      M04 34
      E02 15
      E01 42
      L03 18
      M04 36
      S01 1
      C05 15
      M04 3
      E01 12
      L03 16
      S01 32
      C05 15
      M04 65
      E02 42
      E01 13
      L03 42
      M04 9
      S01 51
      C05 7
      M04 42
      S01 1
      L03 19
      E01 3
      E02 18
      L03 36
      M04 7
      S01 5
      C05 10
      E02 3
      S01 7
      L03 29
      E01 13
      L03 21
      S01 17
      C05 18
      E01 21
      L03 17
      C05 35
      E01 42
      L03 13
      M04 19
      Totales 1389

      Max. Total
      Min. Total
      Num. Ventas >10000

      Eliminar
    3. Bueno,
      me centro en el BUSCARV, lo demás quedó comentado en el texto anterior.
      En la tabla 'Ventas almacén' en la columna de Bruto tendrás que incluir una función BUSCARV de la siguiente forma. Suponiendo que la tabla Articulos está en las columnas A1:C6, y que la tabla 'Ventas' en la columna K1:Q40. en la celda M2:
      =BUSCARV(K2;$B$1:$C$6;2;0)
      esto te devolverá el Precio en función al código del artículo.

      Espero que ahora sí.
      Slds

      Eliminar
  75. ahora si muchas gracias

    ResponderEliminar
  76. NECESITO AYUDA POR FA LA FUNCION BUSCARV AL REALIZARLA ME SALE EL ERROR # N/A.Y NO SE COMO CORREGIRLO O QUE DEBO HACER.

    ResponderEliminar
    Respuestas
    1. Hola,
      el error #N/A suele aparecer cuando el valor buscado no se encuentra en la primera columna de la matriz donde estés buscando... asi que empiez asegurándote de esto...
      Habría que ver la fórmula por si acaso no estuviera bien construida, pero probablemente sea la primera opción.
      Slds
      P.D.: Por favor, evita escribir en mayúsculas, esto significa que me estás gritando... ;-)

      Eliminar
  77. Buenas!! necesito saber si con excel se pueden comparar numeros de una fila con una columna que tiene diferentes numeros o iguales a la fila y que me de el resultado de la cantidad de veces que se repiten esos numeros en una columna , espero me haya explicado saludos

    ResponderEliminar
    Respuestas
    1. Hola!
      puedes emplear la función CONTAR.SI para realizar ese conteo para cada número de esa columna sobre la fila (o al revés)...

      Espero te sirva.
      Sdls

      Eliminar
    2. me podrias pasar un ejemplo , ya que con esto me ahorraria mucho trabajo muchas gracias

      Eliminar
    3. bueno, envíame un fichero a
      excelforo@gmail.com
      con tu planteamiento y te lo reenvío..
      Slds cordiales

      Eliminar
  78. SABES NECESITO COLOCAR LA FUNCION BUSCARV PERO CUANDO ME SALE CERRO QUE APARESCA UNA FRASE QUE DIGA NO EXISTE ODIGO

    ResponderEliminar
    Respuestas
    1. Hola, que tal?
      espero estés bien...
      La fórmula necesitará, según lo que planteas, un condicional SI además del BUSCARV. Podría ser algo así:
      =SI(BUSCARV(...)=0,"No existe código";BUSCARV(...))

      con los datos que aportas poco más puedo concluir.
      Cordiales saludos

      P.D.: evita escribir en mayúsculas, esto es igual a dar gritos ;-)

      Eliminar
  79. Hola, que tal, he estado usando la funcion buscar para encontrar texto de cada celda de una columna en otra y colocar el valor numerico que le corresponde, pero no me esta resultando

    Mi funcion esta asi: =BUSCAR(E2,AF$2:AF$38,AG$2:AG$38)

    Donde :
    E es una columna con un texto diferente por cada celda y quiero buscar cada texto de esa columna (es decir E2,E3,E4...) en AF2:AF38 y colocar el valor de AG2:AG38 ubicada en la misma fila de AF2:AF38 que coincida, pero parece que la funcion buscar no esta considerando el texto de las celdas que le solicito. Espero su ayuda

    ResponderEliminar
    Respuestas
    1. Hola!!
      la función BUSCAR es bastante sencilla de utilizar, pero hay que saber que el vector de búsqueda (AF2:AF38·en tu caso debe estar ordenado.. ojo guardando la integridad con AG2:AG38).
      Selecciona AF2:AG38 y ordenalo... verás como sí te funciona correctamente.

      Otra solución muy sencilla, y no necesita ordenación previa es utilizar la función BUSCARV:
      =BUSCARV(E2;AF2:AG38;2;0)

      Espero te sirvan
      Slds

      Eliminar
  80. Buenas tardes,
    Necesito facturar con excel, utilice buscar para cargar los datos de los clientes desde otra hoja resulto perfecto ya que elijo el cliente y automaticamente se cargan sus datos. Quise hacer lo mismo con los productos (para que cargue automaticamente el producto y precio) pero cambia el valor en todas las lineas (cada vez que bajo una linea o renglon) para cargar un nuevo producto o item ( desde una lista desplegable elijo los clientes asi como los productos o items) Podrian ayudarme a corregir el error.
    Gracias

    ResponderEliminar
    Respuestas
    1. Hola,
      prueba en lugar de la función BUSCAR la función BUSCARV o en todo caso INDICE con COINCIDIR....
      el problema de BUSCAR es que para que funcione correctamente siempre debemos tener ordenado el vector comparación.
      Prueba y comentas.
      Slds

      Eliminar
    2. GRACIAS

      Eliminar
  81. hola tengo una lista en que consta de tres columnas : en la 1 esta nombres; el la 2 esta edades, en la 3 notas.
    Como hago una formula que me de : Primero el nombre de la que tenga menor edad; Segundo el nombre de la persona que tenga mayor nota.
    gracias mil por la ayuda

    ResponderEliminar
    Respuestas
    1. Hola,
      para conseguir el nombre del que tenga menos edad
      =INDICE(nombres;COINCIDIR(MIN(edad);edad;0))

      nombre de la persona que tenga mayor nota
      =INDICE(nombres;COINCIDIR(MAX(nota);nota;0))

      Suponiendo que no se repitan edades ni notas.
      Slds

      Eliminar
  82. HOla,
    nesesito su ayuda tengo una tabla que incluye nombre del producto precio de venta y precio costo.. quiero saber como hacer para que al ingresar el nombre del producto automaticamente tiere el precio de venta y de compra...
    gracias por su ayuda

    ResponderEliminar
    Respuestas
    1. Hola,
      pues una manera es aplicando la función BUSCARV
      supongamos tu tabla en las columnas A:C, estando en la primera columna A el nombre del producto.
      Entonces en una celda, por ejemplo E1 escribirías el nombre del producto, y en F1 introduces la fórmula:
      =BUSCARV(E1;A:C;2;0)
      con lo que consiguirías el Precio de venta, y si en G1 escribes:
      =BUSCARV(E1;A:C;3;0)
      el precio de compra.

      Slds cordiales

      Eliminar
  83. MUCHAS GRACIAS FUE DE MUCHA AYUDA TU COMENTARIO...ERES MUY AMABLE SALUDOS..

    ResponderEliminar
  84. NECESITO ENCONTRAR DATOS REPETIDOS EN DIFERENTES HOJAS A LA VEZ, COMO LO REALIZO

    ResponderEliminar
    Respuestas
    1. Hola Omar,
      que tal estás? espero te encuentres bien.
      Lo primero es agradecerte que no escribas en mayúsculas.. esto sería lo mismo que si gritaras ;-)
      Para buscar datos en diferentes hojas puedes aplicar lo explicado en esta entrada
      http://excelforo.blogspot.com.es/2013/08/la-herramienta-buscar-y-reemplazar.html
      Slds cordiales

      Eliminar
  85. Hola estoy haciendo un excel sencillo para registro de entrada y salida de articulos, me gustaria saber como puedo hacer que me sume los articulos por nombres, osea cada vez que ingreso una corchetera se me sume al estock de las corcheteras y asi con el resto de los articulos como los lapices que se sumen a lapices, toners etc, desde ya gracias


    ResponderEliminar
    Respuestas
    1. Hola Nuñez,
      para acumular registros lo más habitual es emplear las funciones
      SUMAR.SI o SUMAR.SI.CONJUNTO y CONTAR.SI o CONTAR.SI.CONJUNTO

      Entiendo que en una hoja 'Base' incluyes nuevos registros de 'compras' de los diferentes productos, y en otra 'Stock' controlas el número de unidades... si que será en esta última donde emplees las funciones comentadas para acumular los diferentes productos comprados.

      Te recomendaría por último no trabajes por Nombres y si pr Códigos, así será mucho más fiable el cálculo.

      Slds cordiales

      Eliminar
  86. Buenas Noches. Ismael Romero ¡Excelente Foro.!
    Me puedes colaborar con lo Siguiente; "Intentaré Explicar lo mas claro Posible"

    Necesito saber que Empresas han aceptado "si". Es decir tengo dos columnas 1. con los que dirán que "si" (No todas) 2. Nombres de las empresas. Entonces hago la formula Buscarv para saber que empresas de todo el listado han dicho que "Si",Hasta Ahí, muy bien, pero al arrastrar hacia abajo para que me muestre los demás nombres las empresas siempre aparece la misma empresa.( La primera del listado ) (Me imagino es por que se repite Si, pero no lo sé)
    PD: Hago esta formula pues este resultado estará en otro libro diferente.

    ResponderEliminar
    Respuestas
    1. Hola Pilar,
      no creo que la función BUSCARV resuelva el problema que se te plantea...
      En este caso me parece más sencillo aplicar un Autofiltro sobre el origen de datos y filtrar poe la primera columna aquellas con SI.
      También podrías probar con un Filtro avanzado si es que necesitas copiar el resultado de elementos/empresas que hayan aceptado (con SI) a otro lugar...

      Otras opciones pasarían por emplear matriciales o quizá alguna macro.

      Espero te haya podido orientar.
      Slds

      Eliminar
  87. hola que tal, mi consulta es la siguiente cuando uno intenta buscar un argumento fuera del rango de búsqueda nos sale error , pero quiero saber como se puede hacer cuando no se pone ningún valor es decir ella celda esta vacía y no quiero que salga ningún error, espero que puedas ayudarme gracias

    ResponderEliminar
    Respuestas
    1. Hola Cesar Augusto...
      no comprendo exactamente, pero si quieres evitar que salga un error prueba con
      =SI.ERROR(BUSCARV(...);"")

      Slds

      Eliminar
  88. hola, una consulta:
    Copiar la sig info que consiste en dos listas correspondientes a 20 cantantes y grupos de musica. Realizar la comparacion de los listados de tal manera que me indique "coincidencia" si se repite alguno y que indique "no" en caso contrario.

    copio las lñistas, pero no me doy cuenta que funcion utilizar.

    Gracias
    Nacho

    ResponderEliminar
    Respuestas
    1. Hola nacho, podrías emplear (entre otras) la función BUSCARV sobre ambas listas a comparar, relacionando llos valores buscados de una sobre la otra matriz dque componga el listado.. en aquellos casos que encuentre el valor hay coincidencia, en caso contrario, no encontrará el valor y devolverá un error #N/A.

      Además al queres que aparezca eun texto concreto 'coincidencia' o 'no', deberías aplciar un condicional SI.

      Quedaría algo así:
      =SI(ESERROR(BUSCARV(cantante1; listado2;1;0));"no";"coincidencia")

      Espero te pueda orientar..
      un cordial saludo

      Eliminar
  89. AYUDENME XFAVOR URGENTE :
    Con el último carácter del código y la tabla de turnos, obtenga el nombre del
    turno
    Sugerencia: Usar la funciones Derecha y ConsultaV Usar la funciones Derecha y ConsultaV


    ResponderEliminar
    Respuestas
    1. Hola, que tal, espero te encuentres bien..
      En primer lugar te diría te leyeras las normas de uso del blog.
      Luego sería interesante hubieras aportado un ejemplo de ese código del que hay que extraer el turno...
      Pero haciendo un ejercicio de imaginación, sin saber nada de ese código, podría ser algo del estilo:
      =consultav(derecha(codigo;2));TablaTurno;2;0)

      quédate con la estructura de la función, ya que los parámetros seguro cambian en tu ejemplo,

      Slds

      Eliminar
  90. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  91. Consulta, tengo una tabla personal por fecha en la que me indica ubicación del personal(oficina, almacén, obras 1, obra 2 ),
    y tengo una segunda tabla personal por fecha en la que me indica asistió = 1, no asistio=0, -- esto lo tengo enlazado en un =SI('x Obra'!H12="",0,1).
    actualmente tengo 30 activos, pero el personal entra y Sale x lo que los items varian de ubicación en la lista.
    por lo que quiero q busque a la persona y a la fecha y me indique si asistio o no (1,0) favor de dar un correo prar dar mis archivos

    ResponderEliminar
    Respuestas
    1. Hola,
      puedes enviarme tu duda con el fichero adjunto a
      excelforo@gmail.com

      Slds

      Eliminar
  92. Hola, tengo una consulta que parece fácil, pero no doy en el blanco..

    Tengo una tabla de longitud variable. También los encabezados de las columnas pueden variar de posición. Necesito obtener un valor dentro de la tabla que responde a lo siguiente: Primero debo encontrar la ubicación del valor DATO1 en los encabezados de las columnas. Una vez hallada esa columna, necesito encontrar la primera celda que contenga datos (que no esté vacía) en esa misma columna (llamémosla celdaX), y luego extraer el valor correspondiente a la celda que está 2 lugares a la derecha de celdaX.
    Alguna idea..?

    ResponderEliminar
    Respuestas
    1. Hola,
      bueno, de fácil nada... ;-)
      Lo primero habría que partir de una hipótesis respecto a qué disposición de datos existe.. ya que lo complicado es encontrar esa primera celda que contenga datos (que no esté vacía)...
      El problema de la cabecera cambiante se solventaría con la función COINCIDIR y localizándola con por ejemplo con al función DIRECCION...
      para obtener o extraer el dato dos lugares a la derecha bastaría emplear sobre la CeldaX la función DESREF(celda X;0;2)

      Pensaré una manera de conseguirlo sin macros, y en todo caso , lo subiré al blog.

      Slds

      Eliminar
    2. Ismael, gracias por responder...
      Mirá, yo encaré el problema con buscarh. Como primer parámetro (valor a buscar) ingreso DATO1, el rango en mi caso es la fila 2 y el problema lo tengo al querer determinar la fila en la que deseo buscar el nuevo dato (celdaX), ya que no sé dónde se halla esa primera celda ocupada. Me imagino que se pueden anidar funciones para lograrlo, pero con todas las que fui encontrando necesito fijar un rango sobre el cual pivotear en la búsqueda, y ese rango lo desconozco.

      Eliminar
    3. Hola!
      para localizar el primer valor NO vacío prueba con
      =INDICE(D2:D11;COINCIDIR(VERDADERO;INDICE((D2:D11<>0);0);0))
      suponiendo el rango en D2:D11..
      Claro si desconoces el rango (??) el asunto se complica...

      Espero la propuesta te aporte algo de luz.
      Slds

      Eliminar
  93. Que tal buen dia
    Tengo un listado entonces
    A1 (602900008) quiero que lo busque en columna C y cuando lo encuentre ponga lo que dice D.
    Digamos que si encontro el mismo num en C5 el resultado sea D5

    ResponderEliminar
  94. Hola buenas tengo una tabla con libros y paginas y necesito que me devuelva el libro con menor numero de páginas y no se que función utilizar gracias

    ResponderEliminar
    Respuestas
    1. Hola,
      yo aplicaría un Autofiltro, y sobre el campo de Páginas aplicaría un filtro de Diez mejores.. configurándolo con 'inferiores' y 1.

      Otras posibilidades serían con tablas dinámicas o incluso con funciones, por ejemplo una combinación de K.ESIMO.MENOR y COINCIDIR.

      Un cordial saludo

      Eliminar
  95. Muchas gracias esta tarde lo intentaré

    ResponderEliminar
  96. hola, necesito que me ayuden , tengo una lista de personas que manejan una linea de envasado, en el envasado hay 2 maquinas diferentes, la llenadora y la selladora, y hay tres modelos de llenadora y de selladora,
    por ejemplo
    pepe perez es de envasado y maneja la llenadora 1, entonces le falta la lenadora 2, y 3 ademas de la selladora , 1 , 2, y 3
    necesito una formula que me muestre que maquina le falta manejar a cada uno, como podria hacer?

    ResponderEliminar
    Respuestas
    1. Hola Lucy,
      supongamos en A2 el nombre del operario, y en B2 la maquina empleada (por ejem, 'llenadora1'), entonces en C2 insertamos:
      =CONCATENAR(SI("llenadora1"<>B2;"llenadora1";"");SI("llenadora2"<>B2;"llenadora2";"");SI("llenadora3"<>B2;"llenadora3";"");SI("selladora1"<>B2;"selladora1";"");SI("selladora2"<>B2;"selladora2";"");SI("selladora3"<>B2;"selladora3";""))

      Saludos cordiales

      Eliminar
  97. Buenos dias,

    Por favor, Quisiera saber si con solo ingresar un codigo me puede jalar en la siguiente cela la descripcion del producto, por favor apoyame con esto.

    Gracias de antemano

    ResponderEliminar
    Respuestas
    1. Hola William,
      lógicamente la descripción del producto debería estar en algún otro lugar, para luego recuperarlo con una función BUSCARV, y situarlo en la celda de al lado del código del producto; por ejemplo en A1 tenemos el código y en B1 recuperamos la descripción:
      =BUSCARV(A1;Hoja2!$A$1:$B$10;2;0)

      suponiendo en la Hoja2 en A1:B10 existe otro listado con las equivalencias de códigos y descripciones...

      Saludos cordiales

      Eliminar
  98. Como le hago para que si en una matriz tengo varios datos que corresponden a un mismo grupo al decirle que los busque vaya adicionando el siguiente dato y no me ponga el primero que encuentra?
    slds

    ResponderEliminar
    Respuestas
    1. Hola Manuel,
      tu planteamiento sólo es posible con funciones de tipo matricial (o en su caso la función INDICE), o con macros.

      Aquí tienes un ejemplo
      http://excelforo.blogspot.com.es/2012/11/una-matricial-de-excel-para-listar.html
      Saludos

      Eliminar
  99. HOLA NECESITO HACER UNA PREGUNTA.

    TENGO UNA TABLA PARA SACAR TARIFAS CON EXCEDENTES POR EJEMPLO
    CADA USUARIO TIENE DERECHO A 10M3 SI SU LECTURA SALE QUE CONSUMIO 65 EL NUMERO DE EXCEDENTES SERIA 55 DEL CUAL TENGO QUE SACAR POR TARIFAS EJEMPLO

    10- 20 = $12
    21-30 = $13
    31-40 =$14
    41-50=$15
    51 EN ADELANTE =$16
    Y LO QUE SE HACE ES DIVIDIR EL NUMERO

    55 10 10 10 10 15
    10*12 10*13 10*14 10*15 15*16

    COMO LE HAGO PARA QUE EN EXCEL LAS CELDAS SE DIVIDAN ASI DE 10 EN 10 Y EL RESTO EN LA ULTIMA TARIFA.

    ALGUIEN QUE PUEDA AYUDARME POR FAVOR

    ResponderEliminar
  100. Buenos días, quisiera que me ayuden con esto, tengo dos celdas por ejemplo:

    arroz 1000
    papa 500
    fideo 500
    arroz 1000
    papa 750

    lo que quisiera que me ayuden es que en otra hoja pueda ver solo valores únicos con el resultado, ejemplo:

    arroz 2000
    papa 1250
    fideo 500

    Espero me puedan ayudar gracias.

    Atte. Edwing Iberico

    ResponderEliminar
    Respuestas
    1. Hola Edwing,
      podrías en la segunda hoja añadir una Tabla dinámica sobre el origen de la primera hoja... agregando al área de filas de la TD en primer campo/columna y al área de valores los importes.

      Espero te pueda servir.
      Un saludo

      Eliminar
  101. Hola, necesito ayuda con lo siguiente:
    En una hoja tengo estos datos

    variable fijo variable
    auto 4 63
    casa 3 12
    palo 2 63
    paleta 1 18
    pino 15 12

    y en otra hoja al ingresar, por ejemplo 63, debería traer lo siguiente:

    auto 4
    palo 2

    o, al escribir 12, traer lo siguente :

    casa 3
    pino 15

    Espero puedan ayudarme, Gracias de Antemano
    Saludos

    ResponderEliminar
    Respuestas
    1. Hola Alexis,
      al tener que devolver varias celdas, indeterminadas en principio, ser requeriría trabajar con matriciales... lo que es algo largo de explicar.
      Sin embargo, una solución rápida y limpia es construir una tabla dinámica a partir del origen de la primera hoja, llevando el importe variable al área de filtros, y el concepto variable y el fijo al área de filas... así seleccionando del filtro el importe variable obtendrías el listado que buscas.

      Espero haberte dado una idea
      Saludos cordiales

      Eliminar
  102. Hola

    Hice un cotizador que me qedo bastante bueno, varias formulas y bases de datos para conseguir los valores finales, incluidos los porcentajes de mano de obra, perdida de material, etc.
    Le hice 2 macros una que me da la vista previa de los codigos de los vidrios, y otra que me guarda la cotizacion final junto a las condiciones de ventas en un PDF en una carpeta espesifica.

    Ahora necesito que en otra hoja me inserte la imagen del codigo que ingreso en la masterdata.
    He probado grabando algunos movimientos pero no he tenido resultados.

    En la master data tengo una lista desplegable en la columna del producto, y necesito que al seleccionar una, me exporte una imagen a una hoja.

    Gracias!!

    ResponderEliminar
  103. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  104. BUENAS TARDES; ME PUEDEN AYUDAR NECESITO ENCONTRAR UN PRODUCTO PERO EL PRODUCTO LO DISPONEN VARIOS PROVEEDORES QUISIERA SABER SI EXISTE UNA SOLUCIÓN EN EXCEL PARA HACERLO RAPIDO Y FACIL AGRADEZCO SUS SUGERENCIAS

    ResponderEliminar
    Respuestas
    1. Hola,
      Entiendo que desde un listado quieres encontrar a aquellos proveedores con un mismo producto...
      si es así, te recomendaría construir una tabla dinámica sobre eses listado origen y llevar el campo 'productos' al área de filtro de página y el campo 'proveedores' al área de filas.. finalmente filtra por el campo 'producto' aquel que necesites... verás desplegado aquellos proveedores que tengan dicho producto.

      Saludos

      Eliminar
  105. Hola buenas noches , ocupo la formual buscarv() para varias filas pero al momento de pegar en la siguiente fila esta modifica el valor a buscar y la matriz a buscar
    buscarv(a1,Hoja2a1:G300) pero cuando pego la formula en la siguiente fila queda
    buscarv(a2,Hoja2a2:G301) no encuentro como pegar la formula pero que solo modifique el valor a buscar
    buscarv(a2,Hoja2a1:G300)
    buscarv(a3,Hoja2a1:G300) y haci sucesivamente

    ResponderEliminar
    Respuestas
    1. Hola,
      debes emplear referencias absolutas en la matriz de búsqueda:
      buscarv(a1,Hoja2$a$1:$G$300,...)
      Saludos

      Eliminar
  106. Buenas tardes, tengo un libro compuesto de 2 hojas, una de las hojas tan solo tiene una columna, pero con 6500 filas, son fichas de clientes pero que vienen en una misma columna (cod. cliente, nombre y apellidos, DNI, localidad, CP, dirección y número), 6 filas por cliente. En la otra hoja, tengo los pedidos que van realizando, los comerciales, etc.., y lo que necesito es poder llevar a esta última hoja, por medio de alguna formula, los datos del cliente (nombre y apellidos, DNI y localidad), en distintas columnas, en la misma fila donde aparezca su código de cliente.

    ejemplo:

    Cod. cliente Comercial Num. pedido Nombre CIF Localidad
    111 aaa aba
    222 aaa cca
    333 bbb cdd
    444 abb cdc


    Y en la otra hoja tengo:
    111
    Juan Juan Juan
    11111111A
    Valencia
    00003
    C/ Paseo
    7-1º-dcha
    222
    Pepe Pepe Pepe
    22222222b
    Madrid
    00001
    C/Paseillo
    8-2º-izda
    333
    Luis Luis Luis
    33333333c
    Teruel
    00002
    C/pasein
    9-5º-1

    Y como quiero que quede:
    Cod. cliente Comercial Num. pedido Nombre CIF Localidad
    111 aaa aba Juan Juan Juan 11111111a Valencia
    222 aaa cca Pepe Pepe Pepe 22222222b Madrid
    333 bbb cdd Luis Luis Luis 33333333c Teruel
    444 abb cdc

    ¿Como podría hacerlo?

    Espero que me puedan ayudar, muchas gracias.

    ResponderEliminar
    Respuestas
    1. Hola Juan,
      parece un caso más de aplicar alguna macro.. pero con funciones se podría también:
      para completar el Nombre en la hoja 1:
      =DESREF(INDIRECTO("Hoja2!A"&COINCIDIR($A2;Hoja2!$A:$A;0));1;0)
      el CIF
      =DESREF(INDIRECTO("Hoja2!A"&COINCIDIR($A2;Hoja2!$A:$A;0));2;0)
      y la población
      =DESREF(INDIRECTO("Hoja2!A"&COINCIDIR($A2;Hoja2!$A:$A;0));3;0)

      Espero te sirva.
      Saludos

      Eliminar
  107. Hola quisiera hacerte una pregunta
    Tengo una lista de alumnos y al lado el nombre del grupo que conforma cada uno. La lista de alumnos está ordenada alfabeticamente y los grupos aleatoriamente en cualquier celda.
    En otra hoja me gustaría agrupar alumnos por grupo en forma ordenada alfabeticamente
    Yo lo tengo con filtros, obvio, pero quería ahorrarme ese trabajo. Además la formula me sirve para otros años y otras cosas.
    Muy buena la página
    gracias
    Jorge

    ResponderEliminar
    Respuestas
    1. Hola Jorge,
      creo que la mejor opción es construir una tabla dinámica sobre ambos campos de la lista, y en su configuración y diseño incluir primero el campo Grupo y como segundo nivel los Alumnos, todo en el área de filas.
      Es rápido y sencillo...
      Saludos

      Eliminar
  108. Buenas tardes, Necesitaria ayuda sobre este problema que paso a exponer:
    Hoja1
    B C D E
    Fecha Codigo Descripcion Importe
    10 1-1-15 CD/001 La que sea 85
    11 1-1-15 CD/008 " " " 70
    12 3-1-15 CD/001 " " " 50
    13 5-1-15 CD/003 " " " 40
    Lo que necesito es que en la columna C busque todo lo del Codigo CD/001 y los importes de la columna E y asi con todos los codigo y esos resultados que fueran a la Hoja2 y los pusiera de la siguiente manera:

    Hoja2
    C D
    Codigo Importe Total
    10 CD/001 135
    11 CD/003 40
    12 CD/008 70
    No doy con la solucion, soy novate y algo torpe, aunque gracias a esta pagina voy aprendiendo y aplicando algunas cosas sencillas. Mi enhorabuena por dicha pagina-
    saludos cordiales
    Jose A.

    ResponderEliminar
    Respuestas
    1. Hola Losé Ángel,
      puedes emplear la función SUMAR.SI, tendría esta forma en la columna E de la Hoja2:
      =SUMAR.SI(Hoja1!C:C;C10;Hoja1!E:E)
      y arrastras...
      Saludos y gracias!!

      Eliminar
    2. Muchisimas gracias por tu rapida respuesta y sinceramente me tenia loco, Me ha ayudado muchisimo y es satisfactorio que haya personas como tu.
      saludos cordiales,
      Jose Angel

      Eliminar
  109. hola como estan, tengo un problema que quisiera que si saben la respuesta me puedan ayudar el problema es el siguiente:
    tengo una lista de empleados que deben ordenarse por region y ponerse un numero por la misma estos empleados estan ordenados alfabeticamente por lo que las regiones no coinciden y deberian quedar como sigue.
    region A = 1
    region B = 1
    region C = 1
    region A = 2
    region B = 2
    region C = 2
    region A = 3
    region A = 4
    region C = 3
    region C = 4
    region C = 5
    region B = 3
    el problema es el planteado cada region debe ser correlativa independiemtemente del puesto que acupe ante las demas, ademas de poder incrementarse otras regiones anteriormente no cntempladas.
    espero puedan ayudarme si alguien sabe la respuesta a este problema dejo mi correo para sdiego_salas@hotmail.com agradeciendoles de antemano me despido de ustedes.

    ResponderEliminar
    Respuestas
    1. Hola Diego,
      no termino de comprender tu problema (no queda muy claro).. pero si quieres ordenar por región y por valor debes seleccionar ambas columnas y dar un orden personalizado como primer nivel la región y como segundo nivel el valor...

      Espero haber adivinado qué necesitabas.
      Saludos

      Eliminar
    2. como en el ejemplo el resultado que busco es el numerico, una formula que me de el resultado numerico como puede ver en el ejemplo la region a es correlativa hasta el numero 4 y la region b hasta el 3 y region c hasta el 5 los datos estan desordenados pero la correlatividad de cada uno de ellos continua eso es lo que busco, espero pueda ayudarme no se usar en plenitud macros por lo que me resulta dificil poder realizarlo, gracias por responder tan rapido a mi duda y espero poder haber plasmado mejor la interrogante con esta explicacion, gracias.

      Eliminar
    3. podrías aplicar un función CONTAR.SI en la columna B para ir aumentando el contador...
      por ejemplo, en B1:
      =CONTAR.SI($A$1:A1;A1)
      OJO con los dólares..
      Creo responde a lo que necesitas.
      Saludps

      Eliminar
    4. gracias por responder tan rápido y agradecerle por la información me ayudo bastante, gracias por la solución si era lo que buscaba sigue adelante estimado.

      Eliminar
  110. ESPERO PUEDAN APOYARME.. EL DETALLE ES QUE NECESITO CREAR UNA ESPECIE DE FILTROS.. O UN MARCO DE BUSQUEDA,, CON DIFERENTES VALORES--EJEMPLO ( MIS BASE DE DATOS CONTIENE..(* No. DE PARTE *DESCRIPCION* TIPO DE PRODUCTO Y MARCA..) AHORA SOBRE ESO ,, NECESITO TENER UN FITRO POR SI QUIERO BUSCAR POR NUMERO DE PARTE,,, O POR DESCRIPCIO ,,, O POR MARCA PERO SIN ESCRIBIR EXACTAMENTE LO QUE BUSCO,, Y QUE TODO LO QUE ENCUENTRES CON ESA REFERENCIA ME LA AGRUPE EN CELDAS DONDE SE PONDRIA UN TITULO,, POR EJEMPLO RESULTADO----- ESPERO PUEDAN AYUDARME,, EN LO POCO QUE HE INTENTADO,, SOLO ME SEPARA,, PERO SOLO UN RESULTADO... GRACIAS SALUDOS

    ResponderEliminar
    Respuestas
    1. Hola Arturo,
      podrías aplicar un Filtro avanzado donde tú selecciones el campo sobre el que buscar (No. DE PARTE *DESCRIPCION* TIPO DE PRODUCTO Y MARCA)...

      Saludos

      Eliminar
  111. Buenas tardes, por favor me podeis ayudar con este pequeño problema que paso a exponer?:
    En la celda A1 ingreso 20€. En la celda B1 como es el primer ingreso pasa a 20€.
    En la celda A2 ingreso 30€. En la celda B2 pasaria a sumar y el resultado seria 50€.

    lo realice sin macro y cada vez que ingreso debo de arrastar para que se actualice. Podeis pasarme una pequeña macro para que se hiciera solo cada vez que ingrese un importe?

    Gracias

    Saludos cordiales.

    ResponderEliminar
    Respuestas
    1. Hola José Ángel,
      no hace falta macro.. simplemente en B2 introduce la fórmula:
      =SUMA(A2;B1)
      y luego selecciona todo y convierte en Tabla... (ctrl+t)
      Saludos

      Eliminar
    2. Muchas gracias Ismael por la rapida respuesta y ayuda.
      Con la tabla no sale bien y creo que no me explique como deberia. paso a detallar mejor:

      C16(FECHA) D16(CODIGO) E16(DESCRIPCION) F16(IMPORTE)
      utilizo un formulario y en el formulario pongo, fecha,codigo, descripcion e importe. lo que gustaria es que en la celda despues de introducir el importe una vez aceptado los datos, fuera aumentando el saldo en G ya que ese formulario es solo de ingresos.

      gracias
      saludos cordiales

      Eliminar
  112. Gracias Ismael, ya di con la solucion.
    paso a detallarla por si ayuda. =SI(C18="";"";G17+ F18). lo que hice fue que en momento que pusiera fecha, apareciera el saldo en la celda G y, una vez ingresado los datos mas el importe en F y validados, me diera el saldo total en G. arrastre la formula hasta la ultima fila G5556.
    Agradecido por todo

    Saludos Cordiales

    ResponderEliminar
    Respuestas
    1. Hola José...
      seguramente te faltara la parte de convertir el rango en tabla, eso evitará tengas que arrastrar, ya que añadirá automáticamente la fómula para nuevos datos.
      Saludos

      Eliminar
  113. Buenas Ismael,
    no es necesario convertirla en tabla. He puesto el saldo en la celsa G16, la formula en la celda G17, la he arrastrado hasta la G5556 y solo me pone los importes una vez validados.

    Gracias por tu interes.

    Saludos cordiales

    ResponderEliminar
    Respuestas
    1. ;-)
      ¿y si algún día llegas a la fila 5557?... tendrás que molestarte en arrastrar nuevamente la fórmula.. cierto?
      Por eso te recomendaba convertirlo en tabla
      Un cordial saludo

      Eliminar
  114. Hola ayudame con un problema... Tengo la base de datos de un centro de salud en donde constan los nombres el número de identidad y el número correspondiente a sus historia clínica... El problema es que ese centro de salud lleva un resgistro de muchos años siquiera desde el año 1968 y han ocurrido errores al momento de designar el número de historia clínica a lo largo de los años... Dando como resultado el que una persona conste con varios números de historias clínicas o que varias personas registren el mismo número de historia clínica... El problema es que son aproximadamente 10 mil usuarios... Y es difícil buscar uno por uno y solucionar el problema... Existe la manera de crear un buscador que al momento de ingresar los apellidos del paciente arroje el número de historia y clínica y si es que tiene otro también lo haga? O que al momento de ingresar un número de historia clínica que arroje cuantos y cuales son los usuarios que están registrados con el mismo numero?

    De antemano muchas gracias por responder!

    ResponderEliminar
    Respuestas
    1. Hola Victor,
      te diría que lo más sencillo sería aplicar un Autofiltro sobre la base de datos, así a la hora de buscar por cualquiera de los campos (según Apellidos, o Id o Núm Historia) te aparecerían todos los que tuvieran el mismo elemento buscado (uno o varios).
      Otras formas serían con fórmulas matriciales o con algún procedimiento (macro)...
      Saludos

      Eliminar
  115. yo tambien necesito algo similar, 1. crear una
    cedula
    nombre
    direccion
    barrio
    telefono
    ciudad
    2 que al crear estos me queden guardados. pero no se sigan viendo
    3 que cuando necesite uno de estos datos sean por medio del numero de cedula y me arroje todos los datos

    ResponderEliminar
    Respuestas
    1. Hola John,
      cómo estás?, un placer saludarte igualmente.
      Te recomendaría emplearas la herramienta estándar Formulario de datos, con ella puedes introducir datos y filtrarlos/buscarlos por los criterios que necesites.
      Un cordial saludo

      Eliminar
  116. Hola, un saludo especial
    Tengo el siguiente problema, tengo una base de datos en Hoja 1 con nombrecliente, fecha y valor pago, y en las hojas siguientes tengo una por cada cliente.
    Lo que necesito es que al ingresar datos en la Hoja 1 estos datos me los coloque en cada hoja correspondiente a cada uno de los clientes los datos de fecha y valor de pago. Agradezco tu colaboración

    ResponderEliminar
  117. hola buenas noches, tengo una inquietud que me urge resolver, tengo una base de datos con mil datos, hay un campo que se llama fecha de consulta, hay personas que tienen hasta tres consultas, ejemplo: juan roman tiene tres consultas: 12/abril/2015 - 8/mayo/2015 y 3/agosto/2015.... necesito dejar solo la ultima consulta y asi con las demas personas de mi base de datos...gracias

    ResponderEliminar
    Respuestas
    1. Hola Mario,
      entiendo quieres eliminar todos los registros para la misma persona excepto el últimon excepto la más reciente.
      Si es así, podrías ordenar por Fecha en orden descendente y luego aplicar la herramienta de Quitar duplicados, marcando como Id el nombre de la persona
      (y quizá algún otro campo que identifique a ésta)

      Espero te sirva
      Saludos

      Eliminar
  118. hola buenas noches no se si me puedadn ayudar; tengo que validar una celda con correcto (color verde) e incorrecto (color rojo), es una tabla en la cual voy a introducir una curp en una celda "a2" y en la celda i2 tengo que validarla no se si me puedan ayudar, utilizo Excel 2007

    ResponderEliminar

Nota: solo los miembros de este blog pueden publicar comentarios.