Crear una macro para buscar un valor en una columna

21/09/2005 - 14:04 por José Luis | Informe spam
Hola, no se si sera facil o dificil hacer esto lo que quiero hacer es
que dentro de un libro yo pueda crear un boton que al pinchar dos veces
sobre el, me salga un cuadro de dialogo preguntandome por un valor a
buscar... en concreto es buscar un DNI, este campo esta en 1 columna de una
hoja de ese libro entonces quiero que cuando pinche al boton y me salga
una caja con la pregunta, introducir el valor a buscar y que me salga los
datos en del DNI ese

Columna A DNI
Columna B Nombre
Columna C primer Apellido
Columna D segundo Apellido
Columna E Empresa

¿Esto se puede hacer con una macro? ¿Es dificil? ¿Existe algun ejemplo que
se aproxime a esto?

Muchas gracias a todosun saludo



=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

José Luis Telléz Ruiz EMAIL: jltellez@ono.com Movistar: 636147132


=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
 

Leer las respuestas

#1 José Luis
22/09/2005 - 12:19 | Informe spam
Hola KL, darte las gracias otra vez, porque el modulo estandar funciona,
pero me quedan un par de dudas:

1) Resulta curioso que si pego el modulo que tu me has escrito, funciona
sin embargo si lo escribo yo, tal como esta, con todas las comas, los puntos
y comillas...me da error ¿Eso por que es?
2) Queria saber si es posible, como puedo hacer para que busque el DNI ya
contenga 8 o 9 caracteres, eso lo queria porque algunos van con letra y
otros no, en realidad ¿como se puede hacer para buscar un valor que no
sabemos el contenido de caracteres que tiene? ¿Por ejemplo buscar el nombre
de una empresa? Que salgan todas las empresas con los caracteres que
pongamos en la caja de la preguntay que si no existe esa empresa o DNI
que nos salgo un cartel diciendo por ejemplo que no existe. He visto en
algunos ejemplos utilizar el comodin % pero no se como hacerlo.

Espero haberme explicado, gracias por anticipado.


=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

José Luis Telléz Ruiz EMAIL: Movistar: 636147132

=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
"KL" escribió en el mensaje
news:
Hola Jose Luis,

Mira a ver si este es el codigo que buscas. Colocalo en un modulo estandar
de tu libro (p.ej. Modulo1). Para ello:

1) haz clic-derecho sobre el nombre de cualquier hoja de tu libro (en una
de las pestañas de la parte de abajo de la ventana de Excel).
2) Elige la opcion Ver Codigo para abrir el editor VBA.
3) Una vez en el Editor VBA, ve al menu Insertar>Modulo
4) En la ventana mas grande a la derecha pega el codigo que te pongo abajo
5) Ahora pulsa Alt+F11 para volver a la hoja.
6) Activa la hoja con los datos, haz clic derecho sobre cualquier barra de
herramientas de Excel y elige 'Formularios'
7) En la barra de herramientas que aparecera a continuacion elige el
control que corresponde a boton
8) Haz clic sobre la hoja y en el dialogo que aparecera a cointinuacion
(asignar un macro) haz doble clic sobre el macro "BuscarDNI"
9) haz pruebas

Saludos,
KL

Sub BuscarDNI()
Dim rng As Range, msg As String
With Columns("A:A")
Set rng = .Find( _
What:=InputBox("Introduce el DNI: "), _
After:=.Cells(1), _
LookIn:=xlValues, _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext)
End With
If Not rng Is Nothing Then
With rng
msg = msg & "DNI: " & .Value & Chr(13)
msg = msg & "Nombre: " & .Offset(, 1).Value & Chr(13)
msg = msg & "1r Apellido: " & .Offset(, 2).Value & Chr(13)
msg = msg & "2o Apellido: " & .Offset(, 3).Value & Chr(13)
msg = msg & "Empresa: " & .Offset(, 4).Value
MsgBox msg
End With
End If
End Sub

Preguntas similares