Avis : Transpo formule de cellule en code pour userform
Résolu/Fermé
Landry85
Messages postés
94
Date d'inscription
mardi 5 novembre 2013
Statut
Membre
Dernière intervention
16 octobre 2017
-
10 sept. 2017 à 14:40
willy - 17 sept. 2017 à 02:45
willy - 17 sept. 2017 à 02:45
1 réponse
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 238
10 sept. 2017 à 14:54
10 sept. 2017 à 14:54
Bonjour,
Est ce que je peux adapter une formule comme celle-ci à un label dans mon userform?
Tu as evaluate().
La valider en enregistreur de macro pour avoir sa forme anglaise.
A mon avis ça ne vaut pas le coup si tu l'as déjà sur ta feuille.
Ce qui pose souci, c'est que lorsque la valeur de H1 change, il faut cliquer sur le label2 pour que cette valeur change. Comment automatiser l'affaire?
Utiliser l'événement Change (sur les cellules à l'origine de la modification de H1, c'est à dire elle-même si saisie directe, sinon dépend des antécédents de la formule).
eric
Est ce que je peux adapter une formule comme celle-ci à un label dans mon userform?
Tu as evaluate().
La valider en enregistreur de macro pour avoir sa forme anglaise.
A mon avis ça ne vaut pas le coup si tu l'as déjà sur ta feuille.
Ce qui pose souci, c'est que lorsque la valeur de H1 change, il faut cliquer sur le label2 pour que cette valeur change. Comment automatiser l'affaire?
Utiliser l'événement Change (sur les cellules à l'origine de la modification de H1, c'est à dire elle-même si saisie directe, sinon dépend des antécédents de la formule).
eric
10 sept. 2017 à 21:03
est censée suffire car ça ne fonctionne pas chez moi?
Modifié le 10 sept. 2017 à 22:09
Va sur le module de la feuille.
Dans les listes en haut, à gauche tu choisis Worksheet, à droite (tous les événement de l'objet feuille) tu choisis Change pour obtenir :
Il t'est passé Target en paramètre qui est le Range (cellule ou plage) ayant changé (par une saisie, pas une formule !)
Tu peux le tester pour agir en conséquence :
Si H1 est une formule, par exemple =B1&C1&E1 et que toutes sont des saisiesalors :
eric
10 sept. 2017 à 23:50
Je mets un fichier de principe, si tu peux m'aider parce que la je vais finir chauve...
J'ai essayé la copie de cellule, puis pour finir la fonction Evaluate() ( je ne vois pas comment valider une formule en enregistreur macro d'ailleur)
Enfin bon si tu as la patience de regarder. Merci :-)
https://mon-partage.fr/f/U1aAJ2dP/
Modifié le 11 sept. 2017 à 06:41
je n'ouvre pas ton fichier, j'ai dans l'idée que tu as pu laisser des choses dans Workbook_Open() et comme au vu de ton précédent fil tu veux jouer les apprentis sorcier je n'ai pas trop confiance...
Un exemple : https://www.cjoint.com/c/GIleOUjzJwy
eric
11 sept. 2017 à 08:28
Bonjour Landry85,
Ton fichier Excel modifié : https://mon-partage.fr/f/nyvpdOwU/
Tu pourras voir que ça marche sur la feuille Recherche ;
et aussi sur UserForm1 (totalement indépendant).
Si besoin, tu peux me demander une adaptation.
Merci de me donner ton avis.
Cordialement