|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 32 ![]() |
Bonjour,
Je suppose que c'est très simple à faire mais je n'y arrive pas. J'ai effectué une partie de code fonctionnel dans un module. Cependant, je veux basculer celui-ci dans une worksheet "B" car ce code ne s'applique qu'a celle-ci mais est il est dépendant d'une valeur de la worksheet "A" qui peut changer fréquement. Comment puis-je faire pour que le code de la worksheet "B" s'exécute a chaque changement de la worksheet "A"? Merci par avance. Cdlt, |
|
|
00
|
|
|
#2 | |||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Bonjour,
Mets la macro suivante dans le module de la feuille A : Code :
NB Tu aurais aussi bien pu laisser la macro dans le module standard.
__________________
Cordialement. Daniel Citation:
|
|||
|
00
|
|
|
#3 | |
|
Expert Confirmé Sénior
![]() Jérôme FONTAINEContrôleur de Gestion Inscription : juin 2006 Messages : 3 907 ![]() |
Bonjour,
As tu essayé d'appeler ton code dans l'évenement "Worksheet_Change" de la Feuille A
__________________
Jérôme Citation:
nous encouragera.Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
|
|
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 32 ![]() |
Le problème est que j'ai déja un worksheet_change dans ma worksheet "A" et que le nom de la worksheet "B" peut changer.
Peut on faire executer le code d'une worksheet quand celle-ci est sélectionnée? |
|
|
00
|
|
|
#5 | |||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Tu peux combiner le code que tu as dans la macro avec celui à ajouter; par exemple :
Code :
__________________
Cordialement. Daniel Citation:
|
|||
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 32 ![]() |
Ok bon la première solution je ne peux pas faire car la sheet B n'aura jamais le meme nom.
Donc il me faut impérativement un code/fonction dédié. Merci pour votre aide. Cdlt, |
|
|
00
|
|
|
#7 | |||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Si tu mets la macro dans un module standard, le code devient :
Code :
__________________
Cordialement. Daniel Citation:
|
|||
|
00
|
|
|
#8 | ||||
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 32 ![]() |
Merci pour la réponse mais désolé je n'y arrive pas (certainement du a mon niveau).
Pour etre je l'espère plus explicite voici mon code: Worksheet "A": Code :
Code :
|
||||
|
|
00
|
|
|
#9 | |||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Voici le code à mettre dna le module de la feuille A :
Code :
__________________
Cordialement. Daniel Citation:
|
|||
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 32 ![]() |
Vous etes sûr pour le target?
En fait, les feuilles fonctionnent par couple, une worksheet "A" donne lieu à une ou plusieurs worksheet "B"... C'est pour ca que pour simplifier (pour moi) dans la worksheet "B" j'ai utilisé pas mal de Activeworksheet.cells(...).value..... et je n'ai pas a gerer les differents noms de la worksheet "B" |
|
|
00
|
|
|
#11 | |||||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Je persiste. Tu mets la macro appelante et tu passes le nom de la feuille en paramètre :
Code :
Code :
__________________
Cordialement. Daniel Citation:
|
|||||
|
00
|
|
|
#12 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 32 ![]() |
Je comprends la démarche mais je mets quoi pour le "NomFeuille" sachant que je ne connais pas a l'avance son nom et que je n'ai pas de moyen de le générer par avance?
|
|
|
00
|
|
|
#13 | |
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Bonjour,
Comment cette feuille arrive-t-elle dans ton classeur sans que tu en connaisses le nom ? Donne plus d'explications.
__________________
Cordialement. Daniel Citation:
|
|
|
00
|
|
|
#14 |
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 32 ![]() |
Alors je reprends
Ma worksheet A donne lieu a une ou plusieurs worksheet (appellées A1, A2, A3...) qui sont créées/renommées au besoin par copie d'une feuille template: Ex: A donne lieu a créer une A1 ou bien A donne lieu a créer une A1 et une A2 ou bien A donne lieu a créer une A1, une A2 et une A3 .... Donc je ne peut pas savoir en avance si j'aurais A1, A2 ou A3 ou bien deux d'entre elles ou bien les trois voire 4 ou 5... Et la je recommence avec une nouvelle worksheet au meme format que la worksheet A qui donne lieu a d'autre worksheet équivalentes aux A1, A2... Au final, des valeurs dans les worksheet A1, A2, A3... sont inscrites en fonction d'un paramètre de la worksheet A qui lui peut etre mis a jour au besoin. Pour le moment j'ai donc ma macro qui se recopie and les worksheet A1, A2, A3... du au copier/coller de chaque feuille et en entete de ma macro mes worksheet se mettent a jour automatiquement par le worksheet_activate... |
|
|
00
|
|
|
#15 | ||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Citation:
__________________
Cordialement. Daniel Citation:
|
||
|
00
|
|
|
#16 |
|
Expert Confirmé Sénior
![]() ![]() |
Salut
Disons que dans l'idée, je ne vois pas trop pourquoi tu as modifié le nom de la cellule passée en paramètre de Worksheet_Change, normalement par défaut VBa la nomme "Target"... pourquoi avoir mis "Answer"? Ce qui bien sur doit poser des problèmes en utilisant le mot Target puisque celui-ci n'existant pas... son contenu est donc vide. ++ Qwaz
__________________
MagicQwaz := Harry Potter la baguette en moins ![]() Le monde dans lequel on vit HammerFest Ma page perso DVP - Dernier Tutoriel : VBA & Internet Explorer |
|
|
00
|
|
|
#17 | ||
|
Invité de passage
![]() Inscription : janvier 2008 Messages : 32 ![]() |
Citation:
Citation:
Bon mon problème est pour le moment réglé avec le worksheet_activate |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com