Comment créer une variable globale + amélioration de ce code ?

  • Initiateur de la discussion Initiateur de la discussion beegees
  • 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 !

beegees

XLDnaute Occasionnel
Bonjour tout le monde,

J'ai créé un petit bout de code qui permet de jouer au nombre mystère (l'ordi choisit un nombre et on essaie de le deviner en un minimum d'essais) :

Code:
Public nbre_tours As Integer
Sub Nombre_mystere()
    '1) affecter à une variable le nombre mystère
    '2) Lancer une inputBox pour demander d'encoder un nombre
    '3) Vérifier si c'est le bon
    '4) Si c'est le bon, on affiche une msgbox avec le nombre de tentative
    '5) Si ce n'est pas le bon, on incrémente le nombre de fois de 1 et on ré-affiche l'input box
    
    'obligatoire pour créer un nombre aléatoire
    Randomize
    
    'déclation des variables
    Dim Nombre_mystere As Integer, ma_proposition As Integer
    Dim titre As String, commentaire As String
    
    'Affectation des valeurs aux variables
    Nombre_mystere = (Rnd * 10)
    MsgBox (Nombre_mystere)
    nbre_tours = 0
    
    Do
        'je change le titre par rapport au nombre de fois que je suis passé dans la boucle
        If nbre_tours > 0 Then
            titre = "Essayez à nouveau"
        Else
            titre = "Encodez un nombre"
        End If
        
        ma_proposition = InputBox("Veuillez entre un nombre entier", titre)
        nbre_tours = nbre_tours + 1
        
    Loop While ma_proposition <> Nombre_mystere
    
    
    Select Case nbre_fois
        Case Is = 1
            commentaire = "Félicitation, vous êtes très fort !"
            Case Is = 2
                commentaire = "Pas mal, vous pourez bientôt passer pro !"
            Case 3 To 5
                commentaire = "Encore un peu d'entrainemt..."
            Case 6 To 9
                commentaire = "Encore beaucoup d'entrainement"
            Case Else
                commentaire = "Laissez tomber, ce jeu n'est pas fait pour vous"
    End Select
    
    MsgBox "vous avez trouvé le nombre mystère en " & nbre_tours & " fois " & Chr(10) & commentaire
    
End Sub

1) Quand je sorts du Loop While, ma variable nbre_tours est toujours vide, savez-vous me dire comment je peux créer une variable globale svp ?
2) pensez-vous que je puisse améliorer ce code ?

Merci d'avance pour votre aide et bon 14 juillet.

bee
 
Re : Comment créer une variable globale + amélioration de ce code ?

Bonjour
Ce code est bien et personnellement le nombre de tours s'incremente bien
Par contre (et oui il y a un mais...lol)
dans ton select case tu as mis nbre_fois au lieu de nbre_tours...
ceci explique cela...
Si tu avais mis "Option Explicit" en haut de ton module tu aurai vu l'erreur
il n'ai pas nécessaire de déclarer nbre_tours en public (vu qu'il n'y a qu'une macro...
A+ François
 
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

Discussions similaires

Réponses
12
Affichages
1 K
Retour