Guardar numero de fila en una variable

9 envíos / 0 nuevos
Último envío
Jose Luis Casla...
Imagen de Jose Luis Casla Araiz
Offline
última acción: Hace 1 año 1 mes
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntos
alta: 11/05/2012 - 15:15
Puntos: 1785
Guardar numero de fila en una variable

Quiero guardar en una variable, para uso posterior, el numero de fila donde una busqueda me ha encontrado el dato buscado. Quiero guardar en una variable el numero de la fila donde estaba ese dato.

¿Que instruccion y con que sisntaxis se puede hacer eso?

Gracias.

pacomegia
Imagen de pacomegia
Offline
última acción: Hace 20 horas 9 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11175
Re: .ROW Guardar numero de fila en una variable

los rangos tienen la propiedad Row que te da el número de fila

(si el rango tiene más de una fila, con Row obtienes la primera)

para asignarlo a una variable, por ejemplo si quieres asignar el valor de la celda activa

mivariableparalafila=ActiveCell.Row

 

 

------
Ya sé Excel, pero necesito más.

Jose Luis Casla...
Imagen de Jose Luis Casla Araiz
Offline
última acción: Hace 1 año 1 mes
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntos
alta: 11/05/2012 - 15:15
Puntos: 1785
Re: .ROW Guardar numero de fila en una variable

Como siempre, muchas gracias amigo Paco por la ayuda.

Era sencillo... pero habia que saberlo. Como te dijo alguno: sabiendolo... cualquiera.

Muchas gracias. Vamos quitando ignorancia...

mario (no verificado)
Imagen de mario
perdon

como hago para despues de obtener el numero de la fila ir a ella

sheets1   sheet2

1            2

2

3

mivariableparalafila=ActiveCell.Row

como hago para ir sheets1

go sheet1.mivariableparalafila


Christian (no verificado)
Imagen de mario
Pregunta

Amigo, finalmente pudiste solucionar el problema??

El programa que necesito es buscar un valor entre los datos que hay en un rango de la fila A1 a la FB:1 y saber en que posición encontro el valor para luego escribir en él. 

Mgergolet (no verificado)
Imagen de mario
para hacerlo repetitivo?

pacomegia si el proceso esta dentro de un For i, como asigno el valor de la fila a una variable cada vez que hace el next? el proceso encuentra algo y toma el valor de la fila, lo tiene q guardar en una variable. la proxima, cuando i vale 1 mas, encuentra otra cosa y toma otra fila, ahi debe generar otra variable con ese otro valor. el proceso sigue y no siempre tiene la misma cantidad de repeticiones, por lo tanto no puedo (porque no lo se) cuantas variables declarar. los nombres de las variables deberian cambiar en relación a "i". asi tendre tantas variables con filas como veces q encontró algo. Al final puedo mostrar todos esos valores de filas guardados. al ejecutar de nuevo la macro, se debe limpiar todas las variables.

 

gracias

 

Mariano

Cron
Imagen de Cron
Offline
última acción: Hace 8 meses 2 días
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 12735
Prueba a utilizar un array.Lo

Prueba a utilizar un array.

Lo declaras como variant:

dim a() as variant

 

Luego lo redimensionas:

redim a(1)

Posteriormente, cuando hagas cada iteración, haz lo siguiente:

if a(ubound(a)) <> "" then
    redim preserve a(ubound(a) + 1)
end if
a(ubound(a)) = valorcalculado

De esta manera, estás comprobando el último valor del array, y si tiene algo guardado, añade un hueco más.

Un saludo

Mgergolet (no verificado)
Imagen de mario
para hacerlo repetitivo?

ok gracias. y luego para mostrar los datos que fui guardando en las sucesivas variables a(xxx)?

Cron
Imagen de Cron
Offline
última acción: Hace 8 meses 2 días
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 12735
Exacto.a(1) te devuelve la

Exacto.

a(1) te devuelve la primera, a(2) te devuelve la segunda, y así.

Hay una particularidad. Si al principio del módulo has puesto "Option base 1", las matrices empezarán en 1, como a(1). Si no lo pones, la opción por defecto es base 0, y las matrices empezarán en 0, como a(0). En la mayoría de los casos no te afectará, pero en algunos casos concretos puede ser útil saberlo y controlarlo según necesidad.

 

Un saludo