|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité régulier
![]() Inscription : mai 2004 Messages : 61 ![]() |
Bonjour à tous,
Je voudrais savoir si il est possible de faire quelque chose du type : Code :
Code :
Merci d'avance. Alfred |
||||
|
|
00
|
|
|
#2 |
|
Membre éprouvé
![]() Duc Nihiliste Inscription : mars 2011 Messages : 395 ![]() |
Bonjour Alfred23,
Le mieux à mon avis est encore de passer par l'appel de fonctions.
__________________
Cordialement, Runsh |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : mai 2004 Messages : 61 ![]() |
Bonjour Runsh,
Merci pour ta réponse. Est-ce que tu peux m'en dire un peu plus sur l'appel de fonction ? Mon code est déjà écrit et j'ai mes deux procédures ; la seconde est un BoutonClic, et je voudrais remettre une variable à zéro dans la première procédure SI la seconde procédure est exécutée. Cordialement, Alfred |
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Inscription : juillet 2007 Messages : 209 ![]() |
Bonjour Alfred,
Pour completer ce que dis très justement Runsh63 : En terme d'analyse, la proposition 'Si Sub 2 est vraie' est incohérente car par nature une procédure ne renvoit rien , elle permet d'exécuter un traitement . A la limite la procédure peut mettre à jour une variable globale ( booleen dans ton cas ) . La fonction renvoit quelquechose , elle peut renvoyer par exemple un boolean donnant la valeur d'un test. |
|
|
10
|
|
|
#5 | ||
|
Invité régulier
![]() Inscription : mai 2004 Messages : 61 ![]() |
Merci pour ces explications CodeFacile !
Je vais essayer d'être plus précis dans ma demande parce que je ne sais pas si ce que je veux faire est faisable. Voici mon code : Code :
Si je modifie 6 lignes d'un coup, I est réinitialisé à zéro : tout va bien ! Mais si je modifie seulement 2 lignes et que j'envoie les données par l'intermédiaire de la procédure BoutonClic, I ne se réinitialise pas ! De fait, lorsque je modifie à nouveau des lignes, mon message apparait non pas au bout de 6 lignes modifiées, mais dès la 4ème ligne modifiée (2+4=6). Je voudrais que mon I s'initialise à zéro chaque fois que les données sont envoyées par la procédure BoutonClic. Cordialement, Alfred |
||
|
|
00
|
|
|
#6 |
|
Invité régulier
![]() Inscription : mai 2004 Messages : 61 ![]() |
Bonjour à tous !
Souhaitez-vous que je reformule ma question ou que j'apporte des précisions ? N'hésitez pas à me dire si je ne suis pas clair ! Bonne journée. Cordialement, Alfred |
|
|
00
|
|
|
#7 |
|
Expert Confirmé
![]() Chercheur de bonheur Inscription : août 2007 Messages : 2 255 ![]() |
Bonjour,
je ne comprend personnellement pas l'évolution de tes explications et de ta demande qui part d'une Sub avec valeur de retour à vrai pour arriver avec une variable I à remettre à 0 en cas d'appel par Bouton_clic , alors qu'à mon sens à chaque exécution de Worksheet_Change, I est remis à zéro puisqu'il est défini localement dans cette procédure. Je t'invite à t'interroger d'abord sur ton objectif, formulable en Français sans nécessairement du code, et à répondre par une formulation aussi claire que possible de ton besoin. Un problème mal défini où une analyse inaboutie ne conduit jamais à une solution viable. ![]() pour ton info une appel de fonction est qqchose du type : Code :
Function tafonction( param_1 as type_param_1, param_2 as Type_param_2, ....) as Type_fonction Mais .... la ruse est l'arme du persévérant...
__________________
(\ _ /) Cordialement G@dz (='.'=) (")-(") Vous avez des neurones. Sollicitez-les. ![]() . Si vous êtes aidé, pensez à Voter.
|
|
|
00
|
|
|
#8 | ||
|
Expert Confirmé
![]() Inscription : décembre 2007 Messages : 1 908 ![]() |
C'est un problème de chevauchement : tu utilises I à la fois comme variable globale(définie pour tout ton module, en haut), et comme variable locale de bouton_clic(définie au début de bouton_clic).
Ca ne peut pas marcher. Tu dois renommer ta variable globale, par exemple I2, et utiliser I2 partout ou tu t'en sert. Un truc du genre : Code :
EDIT : grillé. Globalement d'accord de toutes façons, l'important est de savoir ce que l'on veut faire exactement. Et puis I et I2, c'est pas propre, mieux vaut des noms parlants, comme LigneTableau et LigneActuelle.....
__________________
Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten : 1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception 2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences 3)le temps de comprendre toutes les exigences, le projet est terminé 4)le temps de terminer le projet, les exigences ont changé Et le serment de non-allégiance : Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée. |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com