IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Application.ScreenUpdating = False Marche pas


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2011
    Messages : 11
    Points : 2
    Points
    2
    Par défaut Application.ScreenUpdating = False Marche pas
    Bonjour,

    Je m'essaye au VBA et je ne comprends pas pourquoi Application.ScreenUpdating = False est en fait égal à True lorsque je survole la ligne en mode pas à pas (voir la copie d'écran jointe). Je confirme qu'il est bien True car lorsque j'execute le code je vois tout défiler. (J'ai bien remis = True avant le End Sub.)

    Merci d'avance pour précieuse aide.
    Images attachées Images attachées  

  2. #2
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Bonjour,

    Quand le curseur est sur une ligne de code, cette ligne ne c'est pas encore exécutée.
    Normalement, ScreenUpdating sera False sur la ligne suivante
    Jérôme

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2011
    Messages : 11
    Points : 2
    Points
    2
    Par défaut
    Merci pour la réponse, mais quand je passe a la ligne suivante c'est toujours = a true!

  4. #4
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Bonjour,

    Plutôt que l'info-bulles, essaie d'utiliser un espion pour visualiser l'état de Application.ScreenUpdating.

    Cordialement.

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2011
    Messages : 11
    Points : 2
    Points
    2
    Par défaut
    Merci gFZT82,

    Voir la copie écran jointe avec l'espion. Le ScreenUpdating est toujours = true.
    Et c'est bizarre car en utilisant l'espion j'ai l'impression que c'est l'inverse qui se produit, c'est à dire:
    quand le ScreenUpdating = False, l'espion indique true et inversement.
    Je comprends pas!
    Images attachées Images attachées  

  6. #6
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    J’ai effectué le test ci-dessous et j’obtiens des résultats cohérents avec l’espion, la fenêtre exécution et la boite message.
    Par contre, l’info-bulle retourne un état « erroné ».
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Test()
     
    MsgBox "Etat initial => Application.scr = " & Application.ScreenUpdating
    Debug.Print "Etat initial => Application.scr = " & Application.ScreenUpdating
     
    Application.ScreenUpdating = False
    MsgBox "1er Basculement => Application.scr = " & Application.ScreenUpdating
    Debug.Print "1er Basculement => Application.scr = " & Application.ScreenUpdating
     
    Application.ScreenUpdating = True
    MsgBox "2eme Basculement => Application.scr = " & Application.ScreenUpdating
    Debug.Print "2eme Basculement => Application.scr =" & Application.ScreenUpdating
     
    End Sub
    Pour l’info-bulle, je n'ai pas d'explication

    Cordialement.

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2011
    Messages : 11
    Points : 2
    Points
    2
    Par défaut
    Merci gFZT82.

    J'ai collé votre test dans mon code et contrairement à vous mon espion n'est ni cohérent avec les lignes de code ni avec les msgbox. voir copie jointe.
    Images attachées Images attachées  

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2011
    Messages : 11
    Points : 2
    Points
    2
    Par défaut
    Bon, j'ai trouvé une piste:
    J'ai supprimer tout les ScreenUpdate de mon code pour voir ce que ça faisait, et là j'ai vu que tout défilait.
    Donc le ScreenUpdate fonctionne pour tout ce qui est du traitement des données (copier, coller, calculs etc...). Par contre je vois toujours les changements de sheet (ma question initiale), et je ne sais vraiment pas comment ne plus les voir.
    Merci pour votre aide.
    Cdlt

Discussions similaires

  1. une application qui ne marche pas de la meme facon
    Par Msysteme dans le forum ASP.NET
    Réponses: 1
    Dernier message: 22/06/2010, 15h59
  2. [XL-2003] Application.workbooks("") ne marche pas
    Par the-geut dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/05/2010, 18h20
  3. Ma première application BDD ne marche pas
    Par AMR_AMR dans le forum NetBeans
    Réponses: 4
    Dernier message: 09/01/2009, 14h48
  4. Réponses: 0
    Dernier message: 29/09/2008, 04h28
  5. window.location.reload(false); marche pas
    Par funckfot dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/03/2006, 17h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo