Application.ScreenUpdating = False ne fonctionne pas

Bonjour,

a l'intérieur d'un sub (en VBA) ou j'effectue des copies de cellules d'un onglet à l'autre la clause qui permet de ne pas afficher le rafraichissement de l'écran ne fonctionne pas. quelqu'un a t'il une idée sur le sujet? dans d'autres sub cela fonctionne correctement

3 réponses

  1. Bonjour,

    Application.ScreenUpdating = False
    n'empeche pas l'affichage des changements de feuille(s) (select, activate, add ......)

    il faut l(accompagner de ceci:
    Application.EnableEvents = False


    remettre a true les deux en fin de traitement. Mais Attention, en cas d'erreur, plus d'evenements excel, donc prevoir un traitement en cas d'erreur qui remettra a true
    Application.EnableEvents


    Par contre votre code est surement modifiable pour supprimer tous les activate et select
    9
    1. Bonjour,

      Montrez le code qui pose probleme svp
      0
      1. Bonjour,

        voici mon code
        a partir d'un onglet de référence pour chaque ligne je vais piquer des valeurs dans un autre onglet et je met en forme.

        Application.ScreenUpdating = False              ' On masque l'affichage des feuilles pendant l'execution de la macro
        Sheets("Clarity").Select

        Nblignes = ActiveSheet.UsedRange.Rows.Count
        nblig_cla = Sheets("Clarity").UsedRange.Rows.Count ' NB lignes de l'onglet
        nblig_gen = Sheets("generales").UsedRange.Rows.Count ' NB lignes de l'onglet
        nblig_host = Sheets("Host").UsedRange.Rows.Count ' NB lignes de l'onglet
        nblig_boreal = Sheets("boreal").UsedRange.Rows.Count ' NB lignes de l'onglet
        nblig_serveur = Sheets("Serveur").UsedRange.Rows.Count ' NB lignes de l'onglet
        nblig_exploit = Sheets("exploit").UsedRange.Rows.Count ' NB lignes de l'onglet
        nblig_securite = Sheets("securite").UsedRange.Rows.Count ' NB lignes de l'onglet
        nblig_matV2 = Sheets("Matiere V2").UsedRange.Rows.Count ' NB lignes de l'onglet

        Set MaFeuille = ActiveSheet
        Set MaPlage = MaFeuille.Range("A2:AH" & Nblignes).SpecialCells(xlCellTypeVisible)

        ' =============================================================================================
        ' Boucle de traitement sur toutes les lignes de l'onglet CLARITY
        ' On recupere les informations des autres onglets si match sur le code clarity
        ' =============================================================================================
        j = 3
        For I = 3 To Nblignes
        'MsgBox i
        ActiveSheet.Range(Cells(I, 1), Cells(I, 7)).Copy
        Sheets("recap").Activate
        Range("A" & I).Select
        ActiveSheet.Paste
        Sheets("clarity").Activate

        With Sheets("recap")

        On Error Resume Next
        ' Mise en forme onglet recap 12/12/13
        ' 11/09/2014 reamenagement onglet
        '
        ' Traitement onglet données clarity complement
        '

        Set c = Worksheets("Clarity").Range("A2:A" & nblig_cla).Find(.Range("A" & j).Value) ' Recherche ligne dans onglet clarity
        therow = c.Row

        .Range("H" & j).Value = Sheets("Clarity").Range("j" & therow).Value 'Ouvert à la saisie
        .Range("I" & j).Value = Sheets("Clarity").Range("K" & therow).Value 'Relance à effectuer
        .

        ' Traitement onglet données generales projet (colonnes P <--> AQ)
        '

        Set c = Worksheets("generales").Range("A2:A" & nblig_gen).Find(.Range("A" & j).Value) ' Recherche ligne dans onglet generales
        therow = c.Row
        .Range("P" & j).Value = Sheets("generales").Range("F" & therow).Value 'Date installation
        .Range("Q" & j).Value = Sheets("generales").Range("G" & therow).Value 'Date derogation fdl
        .Range("R" & j).Value = Sheets("generales").Range("H" & therow).Value 'Date previsionnelle dcn t
        .Range("S" & j).Value = Sheets("generales").Range("I" & therow).Value 'Date previsionnelle livraison matiere a la MOA
        .Range("T" & j).Value = Sheets("generales").Range("K" & therow).Value 'Matiere Host
        .Range("U" & j).Value = Sheets("generales").Range("AJ" & therow).Value 'Matière open pilotée par un traitement HOST (SMT)
        .Range("V" & j).Value = Sheets("generales").Range("L" & therow).Value 'Matiere boreal

        .....
        '
        ' Traitement onglet données HOST (colonnes AR <--> BE)
        '
        Set c = Worksheets("host").Range("A2:A" & nblig_host).Find(.Range("A" & j).Value) ' Recherche ligne dans onglet host pour positionnement
        therow = c.Row
        .Range("AR" & j).Value = Sheets("host").Range("H" & therow).Value 'Livraison paquet prog.
        .Range("AS" & j).Value = Sheets("host").Range("V" & therow).Value 'Livraison paquet prog. commentaire
        .Range("AT" & j).Value = Sheets("host").Range("I" & therow).Value 'Nb PCL cree

        ' Traitement onglet données Boreal (colonnes BF <--> BO)
        Set c = Worksheets("boreal").Range("A2:A" & nblig_boreal).Find(.Range("A" & j).Value) ' Recherche ligne dans onglet boreal pour positionnement
        therow = c.Row
        .Range("BF" & j).Value = Sheets("boreal").Range("H" & therow).Value 'Impcat niveau metier
        .Range("BG" & j).Value = Sheets("boreal").Range("I" & therow).Value 'Commentaires

        ' Traitement onglet données Serveur (colonnes BP <--> BW)
        Set c = Worksheets("serveur").Range("A2:A" & nblig_serveur).Find(.Range("A" & j).Value) ' Recherche ligne dans onglet serveur pour positionnement
        therow = c.Row
        .Range("BP" & j).Value = Sheets("serveur").Range("H" & therow).Value 'Nouvelle application a integrer
        .Range("BQ" & j).Value = Sheets("serveur").Range("I" & therow).Value 'Evolution socle technique

        ' Traitement onglet données securité (colonnes BX <--> CB)
        Set c = Worksheets("securite").Range("A2:A" & nblig_securite).Find(.Range("A" & j).Value) ' Recherche ligne dans onglet securite pour positionnement
        therow = c.Row
        .Range("BX" & j).Value = Sheets("securite").Range("H" & therow).Value 'Authentification
        .Range("BY" & j).Value = Sheets("securite").Range("I" & therow).Value 'Analyse de risques

        ' Traitement onglet données Exploitabilité (colonnes CC <--> CJ)
        Set c = Worksheets("exploit").Range("A2:A" & nblig_exploit).Find(.Range("A" & j).Value) ' Recherche ligne dans onglet exploit pour positionnement
        therow = c.Row
        .Range("CC" & j).Value = Sheets("exploit").Range("H" & therow).Value 'Contrat de service
        .Range("CD" & j).Value = Sheets("exploit").Range("I" & therow).Value 'Consigne de reprise
        .Range("CE" & j).Value = Sheets("exploit").Range("J" & therow).Value 'Sauvegarde
        .Range("CF" & j).Value = Sheets("exploit").Range("K" & therow).Value 'Chemin critique

        ' Traitement onglet matiere V2 (colonnes CK <--> CN)
        Set c = Worksheets("Matiere V2").Range("A2:A" & nblig_matV2).Find(.Range("A" & j).Value) ' Recherche ligne dans onglet exploit pour positionnement
        therow = c.Row
        .Range("CK" & j).Value = Sheets("Matiere V2").Range("G" & therow).Value 'Hors PIC via PPF
        .Range("CL" & j).Value = Sheets("Matiere V2").Range("H" & therow).Value 'Autre type matiere V2
        .Range("CM" & j).Value = Sheets("Matiere V2").Range("I" & therow).Value 'Matiere PIC repackagée
        .Range("CN" & j).Value = Sheets("Matiere V2").Range("J" & therow).Value 'Matiere PIC non repakagée

        j = j + 1

        End With

        Next
        End Sub
        0