fonction VBA

Le
michel ou sam
Bonjour,
je me lance dans les fonctions en VBA

J'ai fait une Public Function dans le module1 qui prend en charge la valeur
de 2 cellules sources .
Public Function Casemaine(ligne As Integer, colonne As Integer)
Dans la fonction, les 2 variables précisent l'adresse d'une autre cellule
qui contient un montant.
La fonction utilise ce montant pour me renvoyer une moyenne.

Cette fonction fonctionne quand je valide, par contre si par la suite, les
données de la cellule indexée change, le résultat ne change pas, qu'est ce
que j'ai raté ?

Michel
Excel 2003
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jacky
Le #23069151
Bonsoir,

Aa-tu mis
Application.Volatile
Au début ?
--
Salutations
JJ


"michel ou sam" 4d45a632$0$32456$

Bonjour,
je me lance dans les fonctions en VBA

J'ai fait une Public Function dans le module1 qui prend en charge la valeur de 2 cellules sources .
Public Function Casemaine(ligne As Integer, colonne As Integer)
Dans la fonction, les 2 variables précisent l'adresse d'une autre cellule qui contient un montant.
La fonction utilise ce montant pour me renvoyer une moyenne.

Cette fonction fonctionne quand je valide, par contre si par la suite, les données de la cellule indexée
change, le résultat ne change pas, qu'est ce que j'ai raté ?

Michel
Excel 2003

michel ou sam
Le #23069231
Bonsoir Jacky,
j'ai mis Application Volatile au début il y a 5 mn

et depuis 5 mn ça fonctionne.

Merci
Michel

"Jacky" ii49n0$d74$
Bonsoir,

Aa-tu mis
Application.Volatile
Au début ?
--
Salutations
JJ


"michel ou sam" 4d45a632$0$32456$

Bonjour,
je me lance dans les fonctions en VBA

J'ai fait une Public Function dans le module1 qui prend en charge la
valeur de 2 cellules sources .
Public Function Casemaine(ligne As Integer, colonne As Integer)
Dans la fonction, les 2 variables précisent l'adresse d'une autre cellule
qui contient un montant.
La fonction utilise ce montant pour me renvoyer une moyenne.

Cette fonction fonctionne quand je valide, par contre si par la suite,
les données de la cellule indexée change, le résultat ne change pas,
qu'est ce que j'ai raté ?

Michel
Excel 2003





Jacky
Le #23069351
Et ben.......;o)

Bon courage

--
Salutations
JJ


"michel ou sam" 4d45ae4a$0$5415$

Bonsoir Jacky,
j'ai mis Application Volatile au début il y a 5 mn

et depuis 5 mn ça fonctionne.

Merci
Michel

"Jacky"
Bonsoir,

Aa-tu mis
Application.Volatile
Au début ?
--
Salutations
JJ


"michel ou sam" 4d45a632$0$32456$

Bonjour,
je me lance dans les fonctions en VBA

J'ai fait une Public Function dans le module1 qui prend en charge la valeur de 2 cellules sources .
Public Function Casemaine(ligne As Integer, colonne As Integer)
Dans la fonction, les 2 variables précisent l'adresse d'une autre cellule qui contient un montant.
La fonction utilise ce montant pour me renvoyer une moyenne.

Cette fonction fonctionne quand je valide, par contre si par la suite, les données de la cellule indexée
change, le résultat ne change pas, qu'est ce que j'ai raté ?

Michel
Excel 2003









michdenis
Le #23069621
Bonjour,

Tu as trouvé une solution à ton problème. Bravo !

Dans une fonction devant être utilisée dans une feuille de calcul,
il est souvent préférable de passer en paramètre un objet "Range"
en paramètre.

À partir de cette variable, tu peux déduire toutes les caractéristiques
que ce type d'objet possède...

Et au lieu d'utiliser "Application.volatile", la fonction se met à jour seulement
lorsque la valeur du range est modifiée. Ça diminue le temps de traitement si
cette fonction est utilisée abondamment dans un classeur.


MichD
--------------------------------------------
michel ou sam
Le #23069751
Bonjour MichD,
ce ne sont pas les paramètres passés qui changent mais le contenu de la
cellule(paramètre, paramètre)

La fonction est dans le fichier que je viens d'envoyer à Lionel "A LA
SEMAINE"
http://www.cijoint.fr/cjlink.php?file=cj201101/cij7D4Bu2V.xls
Je crois que j'y ai laissé la macro qui m'a permis d'avancer dans la
recherche de cette fonction.

N'hésite pas à passer derrière moi pour modifier ou proposer une autre façon
de faire.

merci
Michel

"michdenis" ii4jl7$k0b$
Bonjour,

Tu as trouvé une solution à ton problème. Bravo !

Dans une fonction devant être utilisée dans une feuille de calcul,
il est souvent préférable de passer en paramètre un objet "Range"
en paramètre.

À partir de cette variable, tu peux déduire toutes les caractéristiques
que ce type d'objet possède...

Et au lieu d'utiliser "Application.volatile", la fonction se met à jour
seulement
lorsque la valeur du range est modifiée. Ça diminue le temps de traitement
si
cette fonction est utilisée abondamment dans un classeur.


MichD
--------------------------------------------

michdenis
Le #23072991
Bonjour,

| N'hésite pas à passer derrière moi pour modifier
| ou proposer une autre façon de faire.

Quand tout roule, il ne faut plus toucher à rien !
;-)


MichD
--------------------------------------------
DanielCo
Le #23074351
Bonjour,

N'hésite pas à passer derrière moi pour modifier
ou proposer une autre façon de faire.



Quand tout roule, il ne faut plus toucher à rien !
;-)


MichD
--------------------------------------------



Bonjour,
Ca dépend :
***
Comprehending Engineers:
...
"Normal people believe that if it ain't broke, don't fix it.
Engineers believe that if it ain't broke, it doesn't have enough
features yet."
***
Daniel
michdenis
Le #23074951
|Comprehending Engineers:
|...
|"Normal people believe that if it ain't broke, don't fix it.
|Engineers believe that if it ain't broke, it doesn't have
|enough features yet."

Si on te paie pour apporter des améliorations, le problème
ce ne sont pas les améliorations, mais comment arriver à justifier
tes honoraires...à devenir un service indispensable à une organisation...
DanielCo
Le #23075371
Comprehending Engineers:
...
"Normal people believe that if it ain't broke, don't fix it.
Engineers believe that if it ain't broke, it doesn't have
enough features yet."



Si on te paie pour apporter des améliorations, le problème
ce ne sont pas les améliorations, mais comment arriver à justifier
tes honoraires...à devenir un service indispensable à une organisation...



;-)
Publicité
Poster une réponse
Anonyme