IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Comment déclarer une variable globale + améliorations [XL-MAC 2011]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut Comment déclarer une variable globale + améliorations
    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 : 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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
     
    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

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Est-ce que tu ne mélanges pas "nbre_tours" et "nbre_fois" ?

  3. #3
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut
    Salut,

    En effet, je m'étais trompé de variable.

    Merci pour l'aide, problème résolu.

    bee

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment déclarer une variable binaire?
    Par Pragmateek dans le forum C++
    Réponses: 12
    Dernier message: 22/03/2006, 17h35
  2. Déclarer une variable globale
    Par OverLorD34 dans le forum MFC
    Réponses: 8
    Dernier message: 18/03/2006, 10h46
  3. Réponses: 5
    Dernier message: 20/09/2005, 22h48
  4. Comment déclarer une variable globale
    Par davkick dans le forum C
    Réponses: 13
    Dernier message: 20/05/2005, 18h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo