Rapport de message :*
 

Re: Questions userform

Titre du sujet : Re: Questions userform
par myDearFriend! le 30/07/2008 21:39:11

Bonsoir lannou, le Forum,

Petit exercice de logique si tu veux bien :

----------------------
Les 3 premières lignes de code de ton bouton "SUIVANT" sont :
Private Sub CommandButton3_Click()
' Programme qui s'exécute lorsqu'on clique sur le Bouton SUIVANT :

' Code pour éviter la mise à jour permanente de l'écran (pour accélérer la macro) :
Application.ScreenUpdating = False
Je note également que nulle part ailleurs dans cette procédure tu ne rétablis ScreenUpdating à True

Au final, tu te poses la question suivante : "pourquoi les données ne se chargent pas directement dans la feuille à chaque fois que j’appuie sur le bouton suivant ? "
-------------------------------
Fin de l'exercice. J'espère que tu en as compris la teneur...


J'en profite pour quatres petites remarques sur ton code :

Déclarer les variables, ça veut dire déclarer TOUTES les variables. Sinon ça ne sert à rien. (par exemple, ce n'est pas le cas de Numéro_phase, ni de Phase_projet, et il y en a bien d'autres... Voir l'utilisation de Option Explicit dans l'article que je t'ai cité à plusieurs reprises).

Par convention, par logique et pour plus de clarté aussi, les déclarations de variables doivent toujours se faire en tête de procédure (et non au milieu).

Toujours par convention, et pour éviter de mauvaise surprise aussi, il vaut mieux éviter d'utiliser les caractères accentués dans les noms de variable ou d'objet. Pour rappel, l'anglais est de mise dans la plupart des langages de programmation... aussi, les caractères accentués sont toujours à éviter dans le code.

Si tu parcours un peu les forums et ceux du présent site en particulier, tu m'y verras répéter inlassablement que les Select et autre Activate sont inutiles la plupart du temps, voire même sources d'erreurs... Mais ceci est une autre histoire, je pense que tu as déjà bien assez à voir pour l'instant...

Pour finir, si tu dois continuer tes questions sur ce projet, je te prie de bien vouloir créer un nouveau sujet car je pense que le problème d'origine du présent fil de discussion est effectivement résolu.


    Cordialement,