¿Alguna funcion para Buscar la ubicacion(fila,col) de un contenido de celda?

22/09/2004 - 14:17 por gema.bernardo | Informe spam
Hola!

En una hoja excel, tengo almacenada la siguiente info en columnas:

PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 3000
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 6940000
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 6940000
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 6940000
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 6940000

y quiero localizar donde empieza PR.CAR en la primera columna. Hay alguna
funcion en VBA que me permita obtener la fila y columna del resultado de
buscar una cadena en todas las celdas de la hoja excel???

En este caso si yo quiero buscar PR.CAR, necesito que me devuelva: fila 19
columna 1.


¿Alguien me puede ayudar??? me urge un monton.

Muchas Gracias, un saludo:
Gema

Preguntas similare

Leer las respuestas

#1 Víctor
22/09/2004 - 15:52 | Informe spam
La fila puedes obtenerla con esta fórmula matricial:

{=MIN(SI(A1:Z9999="PR.CAR";FILA(A1:Z9999);FALSO))}

y la columna:

{=MIN(SI(A1:Z9999="PR.CAR";COLUMNA(A1:Z9999);FALSO))}

suponiendo que tu información esté en el rango A1:Z9999.
Las fórmulas funcionarán, lógicamente, fuera de ese rango
(dentro dará error de referencia circular).

:-)

Hola!

En una hoja excel, tengo almacenada la siguiente info en


columnas:

PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 3000
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 6940000
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 6940000
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 6940000
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 6940000

y quiero localizar donde empieza PR.CAR en la primera


columna. Hay alguna
funcion en VBA que me permita obtener la fila y columna


del resultado de
buscar una cadena en todas las celdas de la hoja excel???

En este caso si yo quiero buscar PR.CAR, necesito que me


devuelva: fila 19
columna 1.


¿Alguien me puede ayudar??? me urge un monton.

Muchas Gracias, un saludo:
Gema




.

Respuesta Responder a este mensaje
#2 Fernando Arroyo
22/09/2004 - 16:47 | Informe spam
Y como parece que lo necesita hacer desde VBA, el código podría ser algo como:

Sub prueba()
Dim lngFila As Long, btColumna As Byte
With Worksheets("Hoja1") 'Nombre de la hoja donde están los datos
lngFila = Evaluate("=MIN(IF((" & .Name & "!" & .UsedRange.Address & "=""PR.CAR"")*ROW(" & .Name & "!" & .UsedRange.Address & ")>0,ROW(" & .Name & "!" & .UsedRange.Address & ")))")
btColumna = Evaluate("=MIN(IF((" & .Name & "!" & .UsedRange.Address & "=""PR.CAR"")*COLUMN(" & .Name & "!" & .UsedRange.Address & ")>0,COLUMN(" & .Name & "!" & .UsedRange.Address & ")))")
End With
MsgBox "Fila: " & lngFila & vbNewLine & "Columna: " & btColumna
End Sub

Un saludo.


Fernando Arroyo
MS MVP - Excel


"Víctor" escribió en el mensaje news:16d501c4a0ab$58af6d00$
La fila puedes obtenerla con esta fórmula matricial:

{=MIN(SI(A1:Z9999="PR.CAR";FILA(A1:Z9999);FALSO))}

y la columna:

{=MIN(SI(A1:Z9999="PR.CAR";COLUMNA(A1:Z9999);FALSO))}

suponiendo que tu información esté en el rango A1:Z9999.
Las fórmulas funcionarán, lógicamente, fuera de ese rango
(dentro dará error de referencia circular).

:-)

Hola!

En una hoja excel, tengo almacenada la siguiente info en


columnas:

PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 3000
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 6940000
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 6940000
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 6940000
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 6940000

y quiero localizar donde empieza PR.CAR en la primera


columna. Hay alguna
funcion en VBA que me permita obtener la fila y columna


del resultado de
buscar una cadena en todas las celdas de la hoja excel???

En este caso si yo quiero buscar PR.CAR, necesito que me


devuelva: fila 19
columna 1.


¿Alguien me puede ayudar??? me urge un monton.

Muchas Gracias, un saludo:
Gema




.

Respuesta Responder a este mensaje
#3 Tanner
23/09/2004 - 02:29 | Informe spam
hola.. para que funcione deberas seleccionar la celdas de
columna que contenga el dato a buscar...
- la variable x_col te mostrara la fila real dentro del
bloque mientras que cell.row la fila con respecto a la
hoja excel.. espero te sirva.
que logre ubicar funciones de busqueda.. asi que si
alguien las conoce.. por favor.. nos cuentann.! =)
*
Sub X_ms()
For Each cell In Selection
cadena = "pr.car" ' puede ser un inputbox
x_row = x_row + 1
If cell.Value = cadena Then
MsgBox "fila del bloque seleccionado: " & x_row
MsgBox "row :" & cell.Row
MsgBox "col :" & cell.Column
End If
Next
End Sub
*
Saludos
Hola!

En una hoja excel, tengo almacenada la siguiente info en


columnas:

PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 3000
PR.BCN 01/09/2003 0
PR.BCN 01/09/2003 6940000
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 0
PR.BCN 02/09/2003 6940000
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 0
PR.CAR 01/09/2003 6940000
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 0
PR.CAR 02/09/2003 6940000

y quiero localizar donde empieza PR.CAR en la primera


columna. Hay alguna
funcion en VBA que me permita obtener la fila y columna


del resultado de
buscar una cadena en todas las celdas de la hoja excel???

En este caso si yo quiero buscar PR.CAR, necesito que me


devuelva: fila 19
columna 1.


¿Alguien me puede ayudar??? me urge un monton.

Muchas Gracias, un saludo:
Gema




.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida