Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Valeur d'une cellule avec formule

T

tinel

Guest
Bonjour tout le monde

mon problème est le suivant:

Je me suis fait une macro avec worksheet_change pour que la ligne 30 se démerge et ajuste sa hauteur à 16.5 quand A29 > 1. Sauf que A29 contient la formule A28-1. Donc, j'aimerais que quand la valeur de A28 change, A29 (qui est égale à A28-1) change aussi si sa valeur est >1 et que la ligne 30 ajuste sa hauteur à 16.5 sauf qu'étant donné que A29 est une formule, son contenue ne change jamais, donc la ligne 30 ne se démerge pas...

y a-t-il une solution...?

Merci à l'avance pour le coup de main!

tinel
 

tinel

XLDnaute Nouveau
Salut jmps

j'avoue que c'était pas clair mon affaire...je recommence

J'aimerais que ça se passe comme ça:

Je change A28; A29(qui est =A28-1) change aussi automatiquement; Alors worksheet_change s'enclenche et si A29>1 alors la ligne 30 se démerge.

Sauf que présentement, étant donné que A29 est une valeur fixe (formule A28-1) le 'worksheet_change' ne s'enclenche pas.

Est-ce que c'est faisable de cette manière ou peut-être qu'il ya une autre de le faire...je ne sais trop

tinel
 

Abel

XLDnaute Accro
Bonjour le fil,

Si je comprends bien, A29 n'est pas fixe mais est fonction de la valeur de A28.

Et si je dis pas trop d'âneries, dans le worksheet_change, il suffit de tester si A28-1 > 1, non ?

Abel.
 

tinel

XLDnaute Nouveau
Non Abel ça ne suffit pas de tester A28>1

mais je crois avoir trouvé ma propre solution...

En passant la commande Range('A29').Formula = '=A28-1' le calcul de la cellule A29 se fait par VBA au lieu d'être une simple formule Excel donc le la valeur de la cellule A29 se refresh (ou change) à chaque fois. Alors, le worksheet_change s'enclenche.

Ça fonctionne!!

Merci à tous!

tinel
 

Discussions similaires

Réponses
18
Affichages
394
Réponses
6
Affichages
207
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…