Utilizamos Cookies de terceros para generar estadísticas de audiencia y mostrar publicidad personalizada analizando tu navegación. Si sigues navegando estarás aceptando su uso. Más información X
PortadaForo AyudaTutoriales
InicioForosForo Office

Comando de busqueda en excel

minimem
2007-08-28 04:54 - Respuestas: 6 - Tema nº: 2464687


Características: Windows XP Home, processor 1.86 GHZ, 782 MHZ, 1.00 GB.

hola, probe esta macro buscando "recursos" como le hago para que seleccione desde un combobox sin definir preciso una palabra o numero y la muestre en diversos texbox?
Selection.Find(What:="recursos", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate


Posibles soluciones:
Comando de busqueda en excelComando de busqueda en excel
Búsqueda de un comandoBúsqueda de un comando
Excel 2007 se produjo un problema al enviar el comando al programaExcel 2007 se produjo un problema al enviar el comando al programa
Macro de búsqueda y eliminacion de excelMacro de búsqueda y eliminacion de excel
Búsqueda de datos en excel con visual basicBúsqueda de datos en excel con visual basic
ebolo

Re: Comando de busqueda en excel - 2007-08-28 09:18 - Respuesta 2

Hola minimen; la verdad que no entiendo muy bien lo que quieres.
Por lo que entiendo quieres buscar una palabra desde un combo en un rango seleccionado y te muestre en textbox la palabra; es que si es ésto, no lo entiendo porque si la palabra ya la tienes en el combo no necesitas usar el método Find,...

dime cosas.



ebolo

Re: Comando de busqueda en excel - 2007-08-28 09:24 - Respuesta 3

te pongo un ejemplo sacado de la ayuda del access,
Ejemplo del método Find

Este ejemplo busca todas las celdas del rango A1:A500 en la hoja de cálculo uno que contienen el valor 2 y las pone de color gris.

With Worksheets(1).Range("a1:a500")
Set c = .Find(2, lookin:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Interior.Pattern = xlPatternGray50
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address firstAddress
End If
End With

minimem

Re: Comando de busqueda en excel - 2007-08-29 03:30 - Respuesta 4

gracias por el apoyo que nos brindas.
la duda que tengo es la siguiente:
Estoy haciendo una macro la cual contiene una forma con los siguientes textbox nombre direccion telefono, etc.
lo que debe hacer es abrir un archivo de excel el cual contiene cierta cantidad de filas buscar un nombre y al encontrarlo debe de tomar la fila donde encontro el nombre y cada columna la debe de depositar o dejar en cada textbox que le corresponde.
ejemplo:
al capturar en el texbox nombre dar clic en el commandbotton cunsultar y al encontrar el nombre la fila resultante debe de depositar los datos en los textbox que les corresponde. por eso probe con uno en especifico como le hago para que los textbox muestren los datos de toda la fila.
Nota:
la consulta debe ser con cualquier nombre que se seleccione en mi texbox de nombre.
ebolo

Re: Comando de busqueda en excel - 2007-08-29 10:12 - Respuesta 5

Hola de nuevo; ahora ya está claro.

Te voy a poner cómo buscar un dato desde 1 textbox + botón; y cómo rellenar un combobox y buscar desde el combo. Está probado en access97, supongo que en otros access funcionará igual.


Buscamos en el combobox ó en textbox
Private Sub CommandButton1_Click()
Dim objWorkBook As Object, rutalibro As String
Dim xls As Object
rutalibro = "turutalibro.xls"
Set xls = CreateObject("Excel.Application")
'Abrimos libro de excel
Set objWorkBook = xls.Workbooks.Open(rutalibro)
With objWorkBook.Worksheets("Hoja2")
'En la siguiente línea se busca lo puesto en el texto1 ó lo puesto en el combobox1, en el rango a1:a500.
'Quita la comilla simple del principio si quieres que te busque en el textbox1 y comenta la otra con la comilla simple.
Set c = .Range("a1:a500").Find(Me.ComboBox1, LookIn:=xlValues)
'Set c = .Range("a1:a500").Find(Me.TextBox1, LookIn:=xlValues)
If Not c Is Nothing Then
Me.TextBox2 = .Range("B" & c.Row) 'ponemos lo que hay en la celda B...
Me.TextBox3 = .Range("C" & c.Row) 'ponemos lo que hay en la celda C...
Me.TextBox4 = .Range("D" & c.Row) 'ponemos lo que hay en la celda D...
End If
End With
'Cerramos objeto
objWorkBook.Close
'liberamos memoria
Set objWorkBook = Nothing
Set xls = Nothing
End Sub

Rellenamos combobox cada vez que entramos a la Hoja2.
Private Sub Worksheet_Activate()
Dim objWorkBook As Object, rutalibro As String
Dim xls As Object
rutalibro = "turutalibro.xls"
Set xls = CreateObject("Excel.Application")
'Abrimos libro de excel
Set objWorkBook = xls.Workbooks.Open(rutalibro)
'Vaciamos combobox
Me.ComboBox1.Clear
'Rellenamos combobox con datos de la hoja2, columna A
With objWorkBook.Worksheets("Hoja2")
For t = 1 To .Range("a1").End(xlDown).Row
Me.ComboBox1.AddItem .Range("A" & t)
Next t
End With
'Cerramos objeto
objWorkBook.Close
'liberamos memoria
Set objWorkBook = Nothing
Set xls = Nothing
End Sub


saludos.

Edito porque una letra salía mal.



[Mensaje editado por ebolo con fecha: 29-08-2007 10:17:04].
Página:1 Siguiente

Respuestas relacionadas:

Borrar busqueda boton historial busquedaBorrar busqueda boton historial busquedaForo
Excel 2002 abre mi xls pero excel 2000 noooo...xq???Excel 2002 abre mi xls pero excel 2000 noooo...xq???Foro
Problema en excel, no puedo abrir archivos de excelProblema en excel, no puedo abrir archivos de excelForo
Formula de excel o macro en excelFormula de excel o macro en excelForo
Vincular excel con excel en ipadVincular excel con excel en ipadForo
Comando ms-dosComando ms-dosForo
Comando cmdComando cmdForo
Comando lsComando lsForo
Comando de xpComando de xpForo
ComandoComandoForo
InicioSecciones
^ SubirAviso legal
Política Privacidad
Configurarequipos22 Noviembre 2024