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 :

Probleme avec Application.DisplayAlerts [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre émérite Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Points : 2 439
    Points
    2 439
    Par défaut Probleme avec Application.DisplayAlerts
    Bonjour à tous,

    Je fais appelle à vous car je ne comprends pas le fonctionnement de Application.DisplayAlerts dans un cas particulier.

    Je l'utilise pour éviter qu'Excel me propose d'enregistrer, à la fermeture, un fichier sur lequel je suis parfois amené à supprimer les filtres d'une feuille :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Application.DisplayAlerts = False
        Windows(WB_Ext).Close
    Application.DisplayAlerts = True
    Et ça marche très bien. Par contre à l'ouverture, j'ai la Pop-up "Ce classeur comporte des liaisons avec un autre classeur" je n'ai pas besoin de mettre à jour ces données alors j'utilise la aussi Application.DisplayAlerts = FalseMais Excel affiche quand même le pop-up.

    Je vous mets le code un peu plus détaillé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    Private Sub Import_Actions()
      Dim fichier$, WB_Ext$, dlg As FileDialog
     
      Set dlg = Application.FileDialog(msoFileDialogFilePicker)
      With dlg
        .InitialFileName = "Mon chemin"
        .AllowMultiSelect = False
        .Title = "Chemin Extractions (Actions dans MONITO)"
        .Filters.Add "Classeurs Excel", "*.xls; *.xlsx; *.xlsm", 1
        .FilterIndex = 1
        .Show
      End With
     
      If dlg.SelectedItems.Count = 0 Then
        Exit Sub
      Else
        fichier = dlg.SelectedItems(1)
      End If
     
      Application.DisplayAlerts = False
        Workbooks.Open fichier
      Application.DisplayAlerts = True
     
      WB_Ext = ActiveWorkbook.Name
     
      'Toutes mes actions a faire
     
      Application.DisplayAlerts = False
        Windows(WB_Ext).Close
      Application.DisplayAlerts = True
     
    End Sub
    Je me demande si le Application.DisplayAlerts = True n'arrive pas trop tôt après le Workbooks.Open fichier ? Si c'est le cas, ou le mettre ?

    Merci d'avance pour votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set wb=Workbooks.Open(MyFichier, UpdateLinks:=False)

  3. #3
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 207
    Points : 14 362
    Points
    14 362
    Par défaut
    Bonjour,

    Essaie de remplacer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     Application.DisplayAlerts = False
        Workbooks.Open fichier
      Application.DisplayAlerts = Tru
    par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks.Open fichier, UpdateLinks:=0
    De même, tu pourrais remplacer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Application.DisplayAlerts = False
        Windows(WB_Ext).Close
    Application.DisplayAlerts = True
    Par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Windows(WB_Ext).Close True

  4. #4
    Membre émérite Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    Mai 2014
    Messages
    1 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2014
    Messages : 1 115
    Points : 2 439
    Points
    2 439
    Par défaut
    Le problème de DisplayAlertsest résolu car je n'en ai plus besoin avec vos précisons sur l'utilisation du .Open et du .Close
    A force de m'en servir sans paramètre, j'avais oublié d'aller regarder les paramètres

    Un grand merci à vous deux
    Vous êtes trop fort

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Probleme avec Application.echo
    Par stargates01 dans le forum VBA Access
    Réponses: 9
    Dernier message: 14/02/2012, 18h41
  2. probleme avec application
    Par scofield1 dans le forum Outils
    Réponses: 1
    Dernier message: 13/09/2011, 10h13
  3. [AC-2007] Probleme avec : Application.GetOpenFileName
    Par Rapheux dans le forum VBA Access
    Réponses: 4
    Dernier message: 09/02/2010, 16h23
  4. Probleme avec application vb.net
    Par l_achraf dans le forum Windows Forms
    Réponses: 0
    Dernier message: 16/03/2009, 19h21
  5. Probleme avec Application.run
    Par scully2501 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/11/2007, 15h47

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