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