Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

DO WHILE dans VBA

  • Initiateur de la discussion Initiateur de la discussion CharlesSSQ
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

C

CharlesSSQ

Guest
Bonjour,

J'aimerais savoir s'il y a une autre manière d'écrire le code suivant pour générer ce msgbox voici mon exemple. (sans utiliser DO LOOP)

Sub Motdepasse()
Dim reponse As String
Do While reponse <> "mimi"
reponse = InputBox("Saissez le mot de passe:", "Mot de passe")
Loop

MsgBox "Ok, poursuite de la procédure."

End Sub


Merci beaucoup!
Charles
 
Re : DO WHILE dans VBA

bonsoir à tous

Sub Motdepasse()
Dim Reponse As String
'1'
While Reponse <> "mimi"
Reponse = InputBox("Saissez le mot de passe:", "Mot de passe")
Wend
'2'avec goto (mais c'est mieux While)
Retour: Reponse = InputBox("Saissez le mot de passe:", "Mot de passe")
If Reponse <> "mimi" Then GoTo Retour

'3'il faut aussi prévoir une sortie pour abandon(sans saisie) !!!
'(sinon blocage pour une personne qui ne sait pas !?)
'avec ton InputBox je te conseils comme ceci
Do
Reponse = InputBox("Saissez le mot de passe:", "Mot de passe")
If Reponse = "" Or Reponse = "mimi" Then Exit Do
Loop

'suite... voir à tester si Reponse = "" ou Ok !?

End Sub

tu peux aussi faire simple
Reponse = InputBox("Saissez le mot de passe:", "Mot de passe")
if Reponse = "mimi" then à voir pour la suite
 
Dernière édition:
Re : DO WHILE dans VBA

Bonsoir Charles,

Ben tout dépend de ce que vous voulez...

Avec votre code, si l'on oublie le mot de passe, il faut quitter Excel par Ctrl+Alt+Suppr, pas très agréable 😉

Un code sans boucle :

Code:
Sub Motdepasse()
Dim reponse As String
reponse = InputBox("Saissez le mot de passe:", "Mot de passe")
If reponse <> "mimi" Then
  MsgBox IIf(reponse = "", "Le mot de passe n'a pas été entré", "Mot de passe incorrect") & ", la procédure est abandonnée", 48
  Exit Sub
End If
MsgBox "Ok, poursuite de la procédure."
End Sub

Edit : bonsoir Roland, pas rafraîchi

A+
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Macro vba excel
Réponses
6
Affichages
619
Réponses
5
Affichages
913
Compte Supprimé 979
C
Réponses
1
Affichages
575
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…