Répondre "oui" à une MsgBox Excel [Résolu]

Signaler
Messages postés
24
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
20 juillet 2011
-
Messages postés
24
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
20 juillet 2011
-
Bonjour,

J'ai besoin de répondre "oui" automatiquement (depuis ma macro) à une MsgBox Excel qui me demande de confirmer une manipulation.

En effet, dans ma macro j'ai besoin de modifier la validation des données d'une plage de cellules. Ces cellules doivent accepter toutes les données alors qu'auparavant certaines de ces cellules n'acceptaient que les données d'une liste. J'ai enregistré la macro suivante :

Range("K24:O2000").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator _
:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With

qui correspond à la manipulation : je sélectionne ma plage de cellules + clic sur "Données" + clic sur "Validation" + clic sur "Options" + je choisis "Tout".

Le problème est qu'à ce moment une fenêtre Excel s'ouvre en me demandant si je veux bel et bien sélectionner les cellules de ma plage qui n'avaient aucune contrainte sur les données, car parmi la plage de cellules sélectionnées, seules certaines ont cette contrainte mais je n'ai pas moyen de savoir lesquelles.

Je voudrais donc répondre "oui" de manière automatique sans bloquer la macro.

Il me semble que c'est possible avec une commande user-quelque-chose mais je me souviens plus laquelle.

Merci d'avance !

Caroline

3 réponses

Messages postés
6831
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
9 juillet 2020
109
Bonjour,
Il y a une solution supprimer les messages d'alerte

'supprime les messages d'alerte Application.DisplayAlerts = False
Range("K24:O2000").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator _
:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
'rétabli les messages d'alerte
Application.DisplayAlerts = True
@+
Messages postés
6831
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
9 juillet 2020
109
'supprime les messages d'alerte
 Application.DisplayAlerts = False 
Range("K24:O2000").Select 
With Selection.Validation 
.Delete 
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator _ 
:=xlBetween 
.IgnoreBlank = True 
.InCellDropdown = True 
.InputTitle = "" 
.ErrorTitle = "" 
.InputMessage = "" 
.ErrorMessage = "" 
.ShowInput = True 
.ShowError = True 
End With 
'rétabli les messages d'alerte 
Application.DisplayAlerts = True 
Messages postés
24
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
20 juillet 2011

OK merci !

Caroline