Instrucion for each rango in range("a1:a100")

04/01/2009 - 22:50 por Anonimo | Informe spam
Un saludo antes que nada.

Utilizo excel 2007.

La pregunta es la siguiente: es posible que la instrucion for each rango in
range("a1:a100") por ejempo pueda empezar desde la ultima celda del rango,
como por ejemplo con

for i0 to 1 step -1

Es decir, que vaya para atras, y no del primero al ultimo.

Gracias

Preguntas similare

Leer las respuestas

#6 Anonimo
06/01/2009 - 09:54 | Informe spam
Gracias Hector, de esta forma me ayudas a entender mejor tus respuestas.


"Héctor Miguel" escribió en el mensaje de
noticias news:
hola, !

lo que no entiendo es lo siguiente: lo que devuelve:
buscar(2,1/(d$6:d6<>""),d$6:d6) ...



1) la funcion buscar(... devuelve el primer valor manor o igual al valor
buscado
2) la division: 1/(d$6:d6<>"") devuelve el cociente de 1 dividido por
$d6:d6<>""
o sea, una matriz de fracciones crecientes (o valores de FALSO que se
convierten en cero)
3) el rango final (el mismo d$6:d6) le da a la funcion buscar(... su forma
vectorial (de donde toma la devolucion)

(en resumen) si no se va a encontrar el 2 (porque el maximo resultado
seria 1)...
la funcion "regresara" al ultimo valor encontrado y lo devuelve como
resultado en la formula
(consulta la ayuda en linea {F1} en relacion con las formas de la funcion
buscar(...) :))

saludos,
hector.

__ previos __
op1: podrias usar una formula +/- como la siguiente, a partir del dia 2
de cada mes
[E7] =si(d7<>"",d7-buscar(2,1/(d$6:d6<>""),d$6:d6),"")

op2: si lo quieres por codigo (usando la misma formula anterior) solo
requieres dos lineas
la primera "pone" la formula en el rango [E7:E36]
la segunda convierte a valores constantes el resultado de las
formulas (por si no quieres conservar las formulas)

Sub Restar_previo()
[e7:e36].formula =
"=if(d7<>"""",d7-lookup(2,1/(d$6:d6<>""""),d$6:d6),"""")"
[e7:e36].value = [e7:e36].value
End Sub

__ OP __
... Tengo 3 columnas... doce hojas, una por cada mes... y en el rango
c6:c36 tengo los dias... al mes de la pestana.
En... d6:d36... datos numericos... pero que no estan en todas las
filas, por ejemplo en Enero de 31 dias, tengo datos en 24.
Lo que quiero conseguir es que en la columna e me ponga la diferencia
entre el dato que corresponda en la columna d
y el dato justo anterior de la columna d.

Veamos a ver si me explico un poco mejor:

FECHA DATO RESTO
01 - ENE 100 0
02 - ENE 98 -2
03 - ENE 99 1
04 - ENE
05 - ENE 95 -4
06 - ENE
07 - ENE
08 - ENE 91 -4

Además me gustaria que fuese mediante codigo...








Respuesta Responder a este mensaje
#7 humberto
15/01/2009 - 03:39 | Informe spam
hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhoooooooooooooooooooooooooooooooooooooooooooooooooooooooooollllllllllllllllllllllllllllllllllllllllllllllllllllaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa



escribió en el mensaje
news:
Como siempre me vale, Hector. Pero me podrías explicar la formula en si,
porque leo la ayuda pero no veo el porque de algunos datos que pones

[E7] =si(d7<>"",d7-buscar(2,1/(d$6:d6<>""),d$6:d6),"")

[e7] obvio lo tengo claro
si(d7<>"" tambien lo tengo claro es el condicional para si no hay valor en
d7 que ponga ""

lo que no entiendo es lo siguiente: lo que devuelve
buscar(buscar(2,1/(d$6:d6<>""),d$6:d6)

Me lo puedes explicar y de esa forma tambien aprendo a trabajar mejor

Gracias y feliz año, que aun no habia tenido el placer de saludarte




"Héctor Miguel" escribió en el mensaje de
noticias news:
hola, !

op1: podrias usar una formula +/- como la siguiente, a partir del dia 2
de cada mes
[E7] =si(d7<>"",d7-buscar(2,1/(d$6:d6<>""),d$6:d6),"")

op2: si lo quieres por codigo (usando la misma formula anterior) solo
requieres dos lineas
la primera "pone" la formula en el rango [E7:E36]
la segunda convierte a valores constantes el resultado de las
formulas (por si no quieres conservar las formulas)

Sub Restar_previo()
[e7:e36].formula =
"=if(d7<>"""",d7-lookup(2,1/(d$6:d6<>""""),d$6:d6),"""")"
[e7:e36].value = [e7:e36].value
End Sub

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

__ OP __
... Tengo 3 columnas... doce hojas, una por cada mes... y en el rango
c6:c36 tengo los dias... al mes de la pestana.
En... d6:d36... datos numericos... pero que no estan en todas las filas,
por ejemplo en Enero de 31 dias, tengo datos en 24.
Lo que quiero conseguir es que en la columna e me ponga la diferencia
entre el dato que corresponda en la columna d
y el dato justo anterior de la columna d.

Veamos a ver si me explico un poco mejor:

FECHA DATO RESTO
01 - ENE 100 0
02 - ENE 98 -2
03 - ENE 99 1
04 - ENE
05 - ENE 95 -4
06 - ENE
07 - ENE
08 - ENE 91 -4

Además me gustaria que fuese mediante codigo...







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