Referencia a celda

14/01/2004 - 22:13 por manuel | Informe spam
Saludos al grupo.
El problema que se me plantea es el siguiente:
Tengo una tabla de valores en un rango de cierta extensión. Por ejemplo
B2:T1000
Calculo el valor máximo de todo el rango. Por ejemplo max = 345,55
Necesito saber el número de columna y el número de fila que determinan su
posición, es decir, su referencia.
Si se encuentra en la fila 21 y la columna 10 (J), necesito una función que
al darle como argumentos el rango
de búsqueda y el valor buscado (345,55) me devuelva la referencia (J21)
función_ref( B2:T1000; 345,55 ) --> J21

O bien una función que devuelva el número de columna o de fila de ese valor
función_columna( B2:T1000; 345,55 ) --> 10 (J)
función_fila( B2:T1000; 345,55 ) --> 21

He estado mirando en las funciones de búsqueda y referencia de Excel'97,
pero la verdad es que no me aclaro
mucho, aunque seguiré probando.
Gracias

Saludos,
Manuel.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
15/01/2004 - 06:00 | Informe spam
hola, manuel !

... tabla de valores en ... B2:T1000 ... calculo el valor maximo ... ejemplo max = 345,55
... saber el numero de columna y el numero de fila que determinan su posicion, es decir
... necesito una funcion que ... me devuelva la referencia [...]



si quieres 'probar' ANTES de 'llegarle' a las macros... las siguientes formulas 'devuelven' su posicion:
usando/combinando la funcion de hoja de calculo =Direccion(Num_fila,Num_columna)
=> toma nota de las siguientes 'observaciones': <1.- 'mi' separador de argumentos es la coma ',' NO el punto y coma ';'
2.- son EN UNA SOLA LINEA [con toda seguridad NO 'caben' en el texto, asi que 'mejor las separo'] :))
3.- podrias 'ahorrarte' una buena parte de 'los chorizos' de formulas ...
si [p.e.] 'factorizas' [en celdas 'separadas'] algunas de las 'constantes' ;)
4.- si de cualquier forma 'prefieres' el uso de macros... ¿comentas?

saludos,
hector.
p.d. [luego me comentas si te sirvio el 'relleno' de areas en graficos x-y ???] :))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
si el maximo valor es 'unico' en la tabla [?] => TODAS 'fallan' si hay mas de un valor 'igual' al maximo < 'matriciales' [ya sabes: introducir / editar 'terminando' con ctrl+mayusc+enter] ==Direccion(
Max((B2:T1000=Max(B2:T1000))*Fila(B2:T1000)),
Max((B2:T1000=Max(B2:T1000))*Columna(B2:T1000)))

Celda("Direccion",Indice(B2:T1000,
Max((B2:T1000=Max(B2:T1000))*(Fila(B2:T1000)-1)),
Max((B2:T1000=Max(B2:T1000))*(Columna(B2:T1000)-1))))

la siguiente formula NO es 'matricial' ==Direccion(
SumaProducto(Max((B2:T1000=Max(B2:T1000))*(Fila(B2:T1000)))),
SumaProducto(Max((B2:T1000=Max(B2:T1000))*(Columna(B2:T1000)))))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
si el maximo valor se encuentra dos [o mas] veces en la tabla :\\
tendras que 'decidir' si 'obtienes' el que se encuentre 'primero' [o ultimo] POR FILAS ... o ... POR COLUMNAS :))
=> si 'decides' que es mejor 'devolver' EL ULTIMO de 'los encontrables'... cambia K.Esimo.Menor por K.Esimo.Mayor <1.- => matricial <=... 'atendiendo' a cual es la primer fila donde se encuentra UNO de los maximos valores
Direccion(
K.Esimo.Menor(SI(B2:T1000=Max(B2:T1000),Fila(B2:T1000)),1),
Columna(B2:T1000)-1
+Coincidir(Max(B2:T1000),
Indirecto(
Direccion(K.Esimo.Menor(SI(B2:T1000=Max(B2:T1000),Fila(B2:T1000)),1),Columna(B2:T1000))
&":"&
Direccion(K.Esimo.Menor(SI(B2:T1000=Max(B2:T1000),Fila(B2:T1000)),1),Columnas(B2:T1000)
+Columna(B2:T1000)-1)),0))

2.- => matricial <=... 'atendiendo' a cual es la primer columna donde se encuentra UNO de los maximos valores
Direccion(Fila(B2:T1000)-1
+Coincidir(Max(B2:T1000),
Indirecto(Direccion(Fila(B2:T1000),K.Esimo.Menor(SI(B2:T1000=Max(B2:T1000),Columna(B2:T1000)),1))
&":"&
Direccion(Filas(B2:T1000)+Fila(B2:T1000)-1,K.Esimo.Menor(SI(B2:T1000=Max(B2:T1000),Columna(B2:T1000)),1))),0),
K.Esimo.Menor(SI(B2:T1000=Max(B2:T1000),Columna(B2:T1000)),1))
Respuesta Responder a este mensaje
#2 manuel
15/01/2004 - 16:39 | Informe spam
Muchas gracias, Héctor.
Sí que me sirvió y muy bien lo del relleno de sólidos.
Creí que ya mostré mi agradecimiento con una respuesta al grupo, pero parece
ser que no se colgó bien o algo parecido.
Acabo de leer tu respuesta al tema de las referencias de celda, vuelvo a
expresar mi gratitud
por la contestación. Ahora me toca 'estudiar' lo que me decís y
comprenderlo bien.

Por mi trabajo técnico, me veo forzado a utilizar el ordenador bastante. Mi
afición, cuando llego por la noche a casa es programar macros sencillas que
vayan facilitando la labor principal. Hay quien prefiere ver la tele. Voy
aprendiendo poco a poco sobre errores y sin mucho tiempo. Pero conforme voy
haciendo cosillas se va complicando todo y no hay donde aprender. Si no
fuera por esto de los foros, resultaría imposible. Imagino que estamos todos
igual...

Saludos.
Iré preguntando en el foro.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida