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 :

Un petit compte à rebours ! ! ! Une boucle qui plante ! [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2012
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2012
    Messages : 164
    Par défaut Un petit compte à rebours ! ! ! Une boucle qui plante !
    Bonjour à tous !

    J'ai crée sur Excel un petit compte à rebours ! Seulement, comme vous le savez, avec la fonction SECONDE, pour que tout se décompte, il faut actualiser à chaque fois (pour ma part je tape dans une cellule) ! ! !

    J'ai donc penser à Userform pour régler ce problème... Donc, une petit macro écrit dans la cellule A1 le chiffre 5 puis ENTER puis on efface A1 pour réécrire le chiffre 5 et enter (enter suffirait d'ailleurs)

    Dans une autre cellule, D4 le résultat, là où les chiffres se décomptent !

    Dans l'userform, un textbox qui recopie la Valeur de D4

    Seulement voilà, quand je clic sur mon bouton, ça fonctionne ! Mais il faudrait que ça fonctionne tout le temps ! ! ! A chaque seconde !

    J'ai essayé avec une boucle While Wend, ça plante tout !

    Alors que me conseiller vous ? Un timer ?

    J'imaginais qu'avec ma textbox changerais toute seul avec une boucle mais ça ne fonctionne pas ! ! !

    Avez vous une idée ?

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 179
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 179
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Une discussion sur le sujet qui date un peu mais qui est marquée comme résolue
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2012
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2012
    Messages : 164
    Par défaut Boucle qui plante tout dans un décompte
    Bonjour,

    Vous trouverez en pièce jointe mon fichier Excel de décompte ! J'essai d'incrémenter une boucle pour que les secondes s'enlève seconde par seconde mais je n'y arrive pas ! Les boucles While Wend plante tout le fichier ! ! !

    Si quelqu'un pouvait m'apporter et m'expliquer la solution, je lui en serais très reconnaissant !

    Merci d'avance !

    Fichier joint dans vos discussions

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Bonsoir,



    l'on pourrait voir ce fameux code entre balises [code] ?

    Une piste ..pour mieux décrire votre problème..

  5. #5
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2012
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2012
    Messages : 164
    Par défaut
    Bonsoir BBil,

    J'ai pu trouvé ma réponse sur le net, mais j'avoue que c'est un peu du copier-coller et ce qui me gêne ce que je n'ai pas trop compris le pourquoi... Je m'explique :

    Prenons une variable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Dim x as byte
    x=1
    Je souhaite, par exemple, faire exécuté une macro indéfiniment :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    while x=1
    module2.macro1
    wend
    Evidemment, je crée une boucle infinie mais ce que je ne comprends pas, c'est pourquoi ça plante tout Excel ! ! ! Je pensais bêtement, qu'indéfiniment, il me ferais ma petite macro !

    Voici le code que j'ai trouvé et modifié pour que ca marche !
    J'avoue ne pas avoir y compris grand chose
    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
     
    Public StopDecompte As Byte
     
    Sub Minuterie(Sec As Single)
    Dim Arret As Single
    Arret = Timer + Sec
    Do While Timer < Arret
        DoEvents
    Loop
    End Sub
     
     
     
    Dim texte As String
    Do While i >= 0
        If StopDecompte > 0 Then Exit Do
        Feuil1.[I1] = 5
        Feuil1.[I2] = 5
        Frm_Boite_Message.cmdok.Caption = i
        Minuterie 1     '1 = 1 seconde, 0.5 = une 1/2 seconde, etc... et 0.1 = 1 dixième de seconde
        i = Feuil1.[k18]
        texte = CStr(i)
        Frm_Boite_Message.t1.Text = "Vous partirez du pays des Bisounours, dans : " & Chr(13) & Chr(13) & Feuil1.[L10] & " " & Feuil1.[L11] & Chr(13) & Feuil1.[k16] & " " & Feuil1.[L16] & " " & Feuil1.[k17] & " " & Feuil1.[L17] & " " & texte & " " & Feuil1.[l18]
     
     
    Loop
     
     
     
     
     
    Sub Test()
    Decompte Feuil1.[k23]
    Beep
    If StopDecompte = 0 Then Test
    End Sub

    Voilà ! Là ça ne plante pas...

    Seulement, à part le fait de sortir du sub, j'ai pas tout capté !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 12/04/2010, 17h14
  2. Réponses: 10
    Dernier message: 07/01/2007, 12h03
  3. Compte à rebours en boucle
    Par foufoutom dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 25/09/2006, 06h52
  4. [Tableaux] une boucle qui ne boucle pas
    Par taly dans le forum Langage
    Réponses: 9
    Dernier message: 19/09/2006, 17h25
  5. [VBA-E]une boucle qui ne s'arrète pas
    Par vivelesgnous dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 15/02/2006, 18h05

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