Application.ScreenUpdating = False ne fonctionne pas

smer38 Messages postés 13 Statut Membre -  
f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   -
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. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    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
  2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    Montrez le code qui pose probleme svp
    0
  3. smer38 Messages postés 13 Statut Membre 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