Jump to content

Recommended Posts

Posted

Hola a todos:

Aunque se ha contestado a esta cuestión un montón de veces, y como parece que la gente no se entera, porqué siguen preguntando lo mismo una y otra vez, a ver si tenemos mas suerte y se fijan en esta función.

Function Buscar(Valor As Variant, _
Optional Columna As Integer = 1, _
Optional Hoja As Worksheet) As Double
On Error GoTo NotFound
If Hoja Is Nothing Then Set Hoja = ActiveSheet
Hoja.Activate
Columns(Columna).Find(Valor).Select
Buscar = Selection.Row
Exit Function
NotFound:
Buscar = 0
End Function
[/CODE]

Esta función, busca un valor en una columna, de cualquier hoja, de cualquier libro.

Si encuentra el valor, devuelve el número de fila, si no lo encuentra, devuelve 0.

Consta de tres parámetros:

[CODE]
Valor El valor a buscar Obligatorio
Columna Columna en donde buscar Opcional Se asume 1
Hoja Hoja donde buscar Opcional Se asume ActiveSheet

La forma de llamada es:
Fila = Buscar(Valor, Columna, Hoja)[/CODE]

Ejemplos:

Busca "Antoni" en la columna 1 de la hoja activa

[CODE]Fila = Buscar("Antoni")[/CODE]

Busca "Antoni" en la columna 3 de la hoja activa

[CODE]Fila = Buscar("Antoni", 3)[/CODE]

Busca "Antoni" en la columna 3 de la hoja "Proveedores"

[CODE]Set MiHoja = ThisworkBook.Sheets("Proveedores")
Fila = Buscar("Antoni", 3, MiHoja)[/CODE]

Busca "Antoni" en la columna 3 de la hoja "Proveedores", en el libro Cuentas.xls

[CODE]Set MiHoja = WorkBooks("Cuentas.xls").Sheets("Proveedores")
Fila = Buscar("Antoni", 3, MiHoja)[/CODE]

A tener en cuenta: Si se informa el parámetro Hoja, cambia la hoja activa.

Saludos a todos. Antoni.

Posted

Hola Gerson:

Efectivamente, hay un error, no se como ha pasado, porqué lo probé mucho, pero ha pasado.

Queda así:

Function Buscar(Valor As Variant, _
Optional Columna As Integer = 1, _
Optional Hoja As Worksheet) As Double
On Error GoTo NotFound
If Hoja Is Nothing Then Set Hoja = ActiveSheet
Hoja.Activate
Hoja.Columns(Columna).Find(Valor).Select '<============================
Buscar = Selection.Row
Exit Function
NotFound:
Buscar = 0
End Function[/CODE]

De todas formas, en el adjunto, van todos los ejemplos.

Abrir Libro1.xls para verlos.

Gracias Gerson. Saludos. Antoni.

Libro1.zip

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
  • 108 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Files

  • Download Statistics

    • Files
      184
    • Comments
      96
    • Reviews
      28

    More information about "Un juego solitario en Excel"
    Latest File
    By pegones1

    4    0

  • Crear macros Excel

  • Posts

    • Hola, por lo que indicas, me parece que se haría con la función AGRUPARPOR
    • Tengo instalago excel 365 y necesito usar la función =unicos(); pero con dos condiciones y no logro recordar como se realiza: en el ejercicio tengo un listado de personas en otra columna cantidades, entonces me gustaría que al seleccionar a las personas (como unicas)  "columna A" , también sumara las cantidades que les corresponde en la "columna D".  Y las traspase al recuadro resumen que está con amarillo a la derecha. Lo hice, antes,  pero ha pasado un año y no he podido recordar como se realiza. Espero que me de a entender lo que pregunto. Gracias ejemplo.xlsx
    • Cuando puedas, sin prisa!! Muchas gracias!!
    • Bueno, sin libro de ejemplo ni detalles del escenario a mostrar, lo único que en mi caso puedo recomendar a la consulta es que verifique que no hay filtros o si los hay que muestre los datos en blanco. También usar un campo en la tabla de los que se llaman calculados para forzar que siempre haya algo.
    • Hola. Tengo un Excel . Varias columnas( curso,sexo, menor25,mayor54,nivel1,nivel2,nivel3). La cuestión es que al hacer una tabla dinámica cuyo esquema final sería: ((- Columna 1: Curso A   - Subcolumna Hombres   - Subcolumna Mujeres - Columna 2: Curso B   - Subcolumna Hombres   - Subcolumna Mujeres Y en las filas: - Mayor54 - Menor25 - Nivel de Estudios - Nivel de Espacio -Nivel de Cota)) Me ocurre que si en el curso A, solo hay dos hombres menores de 25 y ninguna mujer, no me aparece la subcolumnas mujer ni el total. He entrado en el diseño de tabla para crucear la opción para que lo dé, pero sin resultados. Mil gracias por contestar!!!
  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Privacy Policy