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

Messages postés
24
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
20 juillet 2011
- - Dernière réponse : CarolineBouteloup
Messages postés
24
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
20 juillet 2011
- 17 mai 2010 à 14:33
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
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
6271
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 octobre 2019
87
1
Merci
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
@+

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 193 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Le Pivert
Messages postés
6271
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 octobre 2019
87
0
Merci
'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 
Commenter la réponse de cs_Le Pivert
Messages postés
24
Date d'inscription
lundi 12 avril 2010
Statut
Membre
Dernière intervention
20 juillet 2011
0
Merci
OK merci !

Caroline
Commenter la réponse de CarolineBouteloup