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 :

Non prise en compte de mon code


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier Avatar de perchman
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    199
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 199
    Points : 90
    Points
    90
    Par défaut Non prise en compte de mon code
    Bonjour,

    je pense que la solution ne doit pas être difficile, mais là, je dois relire ma faute à chaque fois !!

    Mon programme est un test de nombre entre 1 et 100 rentré par l'utilisateur !!

    Voici mon [IMG]userform[/IMG].

    Les 2 problèmes sont les suivants:
    1) il n'y a pas de prise en compte de la partie ou je teste si le nombre entré est compris entre 1 et 100.
    2) au niveau de la mise à jour des bornes; à chaque saisie, le programme réinitialise la borne sup et la borne inf !! donc l'intérêt est limité...

    Merci de votre aide !!

    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
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
     
    'déclarer une variable globale au userform
    Dim compteurEssai As Integer
     
    Private Sub CommandButton2_Click()
        Unload Me
    End Sub
     
    Private Sub Label1_Click()
        Label1.TextAlign = fmTextAlignCenter
    End Sub
     
    Private Sub TextBox1_Change()
        TextBox1.TextAlign = fmTextAlignCenter
    End Sub
     
    Private Sub temps_click()
        'temps.Caption = tps
    End Sub
     
    Private Sub Valider_Click()
        Dim intRetour As Integer
            If compteurEssai = 11 Then
                Label1.Caption = ("Perdu")
                Exit Sub
            End If
     
        intRetour = hasard1
     
            Select Case hasard1
                Case 1
                    Label1.Caption = "Bravo"
                Case 2
                    Label1.Caption = ("C'est trop grand !")
                Case 3
                    Label1.Caption = ("C'est trop petit!")
            End Select
        compteurEssai = compteurEssai + 1
    End Sub
     
     
    '1 trouvé
    '2 trop grand
    '3 trop petit
    Function hasard1() As Integer
            Dim secret As Integer
            Dim cherche As Integer
            Dim fin As Integer
            Dim inf As Integer
            Dim sup As Integer
            Dim ninf As Integer
            Dim nsup As Integer
            Randomize
            secret = Int(100 * Rnd) + 1
            ninf = 1
            nsup = 100
            Max = 2
            cherche = TextBox1.Text
                    If cherche > 100 And cherche < 0 Then
                        inter.Caption = "Erreur de saisie"
                    Else
                        If cherche = secret Then
                            hasard1 = 1
                        Else
                            If cherche > secret Then
                                hasard1 = 2
                                nsup = cherche
                                inter.Caption = ("Nombre = [" & ninf & " ; " & nsup & "]")
                            Else
                                hasard1 = 3
                                ninf = cherche
                                inter.Caption = ("Nombre = [" & ninf & " ; " & nsup & "]")
                            End If
                        End If
                    End If
    End Function

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour

    Citation Envoyé par perchman Voir le message
    1) il n'y a pas de prise en compte de la partie ou je teste si le nombre entré est compris entre 1 et 100.
    2) au niveau de la mise à jour des bornes; à chaque saisie, le programme réinitialise la borne sup et la borne inf !! donc l'intérêt est limité...
    Pour 1, essaie de remplacer And par Or.
    Pour 2, je pense que c'est 'secret' qui change tout le temps. Il ne faut le randomiser qu'en début de partie, et donc pas dans le programme qui évalue chaque coup joué.

    PGZ

  3. #3
    Membre régulier Avatar de DidierLoche
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 84
    Points : 105
    Points
    105
    Par défaut
    Bonjour,

    Non seulement secret est mis à jour à chaque fois, mais ninf et nsup également.
    Il faut séparer l'initialisation de la boucle de jeu.

    Didier

  4. #4
    Membre régulier Avatar de perchman
    Étudiant
    Inscrit en
    Décembre 2006
    Messages
    199
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2006
    Messages : 199
    Points : 90
    Points
    90
    Par défaut
    effectivement, ça marche mieux avec une initialisation séparée !!

    Merci beaucoup !!




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

Discussions similaires

  1. Des lignes non prises en compte dans mon code
    Par Speed41 dans le forum EDI
    Réponses: 3
    Dernier message: 24/03/2014, 11h24
  2. Réponses: 0
    Dernier message: 20/09/2010, 14h22
  3. Modifications dans le code behind non prises en compte
    Par Nonos421 dans le forum ASP.NET
    Réponses: 3
    Dernier message: 11/08/2009, 10h09
  4. Non prise en compte du "style code"
    Par guilb dans le forum JDeveloper
    Réponses: 6
    Dernier message: 31/08/2007, 10h23
  5. Réponses: 4
    Dernier message: 29/09/2006, 16h38

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