Llamar a proc. sólo en unas celdas

16/07/2004 - 11:48 por Sonia | Informe spam
Hola!!!

Tengo una macro con un procedimiento que me hace la suma de unas celdas, en
concreto me suma las celdas M20:M46. Quiero que solo se llame a dicho
procedimiento cuando una de estas cambie de valor. Como puedo hacerlo???

Gracias y saludos!!!

Preguntas similare

Leer las respuestas

#1 Valentín Playá Serra
16/07/2004 - 19:18 | Informe spam
Sonia,

Las opciones de Excel te permiten calcular Automáticamente o Manual. El
cálculo automático recalcula cada vez que se cambia el valor de una celda y
el manual cuando se pulsa F9. Creo que no hay más opciones.

La posibilidad que queda es poner Calcular en Manual y hacer que Access
recalcule las filas que te quieras dependiendo de la celda que se cambie.

Saludos,

Valentín Playá Serra
Sonotronic S.A.
*******************************************************

"Sonia" escribió en el mensaje
news:
Hola!!!

Tengo una macro con un procedimiento que me hace la suma de unas celdas,


en
concreto me suma las celdas M20:M46. Quiero que solo se llame a dicho
procedimiento cuando una de estas cambie de valor. Como puedo hacerlo???

Gracias y saludos!!!


Respuesta Responder a este mensaje
#2 Héctor Miguel
17/07/2004 - 07:56 | Informe spam
hola !

Sonia escribio en el mensaje
... macro con un procedimiento que me hace la suma de ... las celdas M20:M46.
... que solo se llame a dicho procedimiento cuando una de estas cambie de valor.

Valentin Playa Serra escribio en el mensaje
Las opciones de Excel te permiten calcular Automaticamente o Manual.
El calculo automatico recalcula cada vez que se cambia el valor de una celda
el manual cuando se pulsa F9. Creo que no hay mas opciones.
La posibilidad que queda es poner Calcular en Manual
y hacer que Access recalcule las filas que te quieras dependiendo de la celda que se cambie.





1.- las opciones que comenta Valentin acerca del modo de recalculo de excel...
'aplican' [de tal manera] =>exclusivamente<= a la interfase con el operador... NO 'por codigo'
puedes revisar en la ayuda [vba] los 'modos' de uso del metodo 'calculate' ;)
[o sea que...] no 'comulgo' con Valentin en el sentido de que 'se requiera ayuda'
[Access???] ... para [¿poder'] 'controlar' el modo de re-calculo de excel... <\°-°/> ;)

2.- lo que no 'deja claro' Sonia es... si la suma 'que hace' el procedimiento [rango 'M20:M46']...
lo utiliza para 'llenar' una variable, o 'conservar' un valor o 'constante' del resultado de esa suma...
o para 'dejar' una formula [p.e. =suma(...] en alguna celda de alguna hoja de algun libro [???]

en cualquier caso, puedes 'detectar' si [alg]una de 'esas' celdas ha sufrido cambios [p.e.]
en el modulo de codigo de 'esa' hoja ==Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("m20:m46")) Is Nothing Then Ejecuta_Mi_Procedimiento
End Sub
¨¨¨¨¨¨¨¨¨¨¨¨¨
[obviamente] el resultado del procedimiento [es probable que] se vera 'afectado' por el modo de calculo 'vigente'
[si es el caso de que solamente 'se toma' el resultado de sumar esas celdas, NO si se 'deposita' una formula]

¿comentas?
saludos,
hector.
Respuesta Responder a este mensaje
#3 Valentín Playá Serra
17/07/2004 - 14:48 | Informe spam
Hector,

mencionar Access fué un lapsus mio, quería decir Excel y quería proponer una
solución del tipo de la que tu propones.

Saludos,

Valentín Playá Serra
********************************************************
"Héctor Miguel" escribió en el mensaje
news:
hola !

> Sonia escribio en el mensaje
> ... macro con un procedimiento que me hace la suma de ... las celdas


M20:M46.
> ... que solo se llame a dicho procedimiento cuando una de estas cambie


de valor.

>> Valentin Playa Serra escribio en el mensaje
>> Las opciones de Excel te permiten calcular Automaticamente o Manual.
>> El calculo automatico recalcula cada vez que se cambia el valor de una


celda
>> el manual cuando se pulsa F9. Creo que no hay mas opciones.
>> La posibilidad que queda es poner Calcular en Manual
>> y hacer que Access recalcule las filas que te quieras dependiendo de la


celda que se cambie.

1.- las opciones que comenta Valentin acerca del modo de recalculo de


excel...
'aplican' [de tal manera] =>exclusivamente<= a la interfase con el


operador... NO 'por codigo'
puedes revisar en la ayuda [vba] los 'modos' de uso del metodo


'calculate' ;)
[o sea que...] no 'comulgo' con Valentin en el sentido de que 'se


requiera ayuda'
[Access???] ... para [¿poder'] 'controlar' el modo de


re-calculo de excel... <\°-°/> ;)

2.- lo que no 'deja claro' Sonia es... si la suma 'que hace' el


procedimiento [rango 'M20:M46']...
lo utiliza para 'llenar' una variable, o 'conservar' un valor o


'constante' del resultado de esa suma...
o para 'dejar' una formula [p.e. =suma(...] en alguna celda de alguna


hoja de algun libro [???]

en cualquier caso, puedes 'detectar' si [alg]una de 'esas' celdas ha


sufrido cambios [p.e.]
en el modulo de codigo de 'esa' hoja ==> Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("m20:m46")) Is Nothing Then


Ejecuta_Mi_Procedimiento
End Sub
¨¨¨¨¨¨¨¨¨¨¨¨¨
[obviamente] el resultado del procedimiento [es probable que] se vera


'afectado' por el modo de calculo 'vigente'
[si es el caso de que solamente 'se toma' el resultado de sumar esas


celdas, NO si se 'deposita' una formula]

¿comentas?
saludos,
hector.

Respuesta Responder a este mensaje
#4 Héctor Miguel
18/07/2004 - 05:57 | Informe spam
hola, Valentín !

mencionar Access fue un lapsus [...]



disculpame... no 'alcance a ver' [el 'porque' de] ese salto entre aplicaciones :(
[yo creo que a esa hora... 'hasta veia doble ya'] :))

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