begin process at 2012 02 15 03:09:23
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

arrêter un timer ds une routine


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

arrêter un timer ds une routine

jeudi 7 septembre 2006 à 16:45:35 | arrêter un timer ds une routine

Achi

bonjour,

voilà j'ai créé un timer pour faire clignoter un text, et je souhaiterai l'arrêter lors d'un traitement d'une autre routine

en clair j'aimerai quitter le timer lorsque j'appui sur un bouton, quelle syntaxe faut-il que je marque ds mon code pour sortir du timer

j'ai tenté avec Exit Sub Timer1_Timer mais ca marche po !!!

Achi!!
jeudi 7 septembre 2006 à 16:49:10 | Re : arrêter un timer ds une routine

BasicInstinct

Membre Club

Timer1.enable=false

ou

Timer1.interval =0



BasicInstinct

jeudi 7 septembre 2006 à 17:01:43 | Re : arrêter un timer ds une routine

Achi

salut BasicInstinct,

merci mais ca ne fonctionne pas, et ca certainement parce que j'ai besoin d'écrire ce code ds mon bouton. il me dit objet requis!!!

Achi
jeudi 7 septembre 2006 à 17:07:21 | Re : arrêter un timer ds une routine

mortalino

Membre Club


Un timer en VBA ??
Thèmes / Visual Basic 6 / Langages dérivés / VBA

Met nous plus de code si tu veux que l'on trouve le problème.

@++


  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
jeudi 7 septembre 2006 à 17:12:41 | Re : arrêter un timer ds une routine

Achi

salut Mortalino,

alors en fait lorsque j'appui sur un bouton je commande 2 timer (en VBA):

Private Sub CommandButton1_Click()
Timer1_Timer
End Sub


ds un module :

Public Sub Timer1_Timer()
Dim Start
    Start = Timer    ' Définit l'heure de début.
    Do While Timer < Start + 0.5
        DoEvents    ' Donne le contrôle à d'autres processus.
        Worksheets(1).CommandButton3.Caption = ""
    Loop
    Timer2_Timer

End Sub

Public Sub Timer2_Timer()
Dim Start
    Start = Timer    ' Définit l'heure de début.
    Do While Timer < Start + 0.5
        DoEvents    ' Donne le contrôle à d'autres processus.
        Worksheets(1).CommandButton3.ForeColor = &HFF&
        Worksheets(1).CommandButton3.Caption = "Annulation"
    Loop
    Timer1_Timer
End Sub


puis enfin lorque j'appui sur un 2ème bouton je veux arrêter mes timer!

Private Sub CommandButton3_Click()
Timer1.interval = 0
Worksheets(1).CommandButton3.ForeColor = &H0&
Worksheets(1).CommandButton3.Caption = "Annulation"
End Sub


il me mets en erreur objet requis...

voilivoilou Achi!!

jeudi 7 septembre 2006 à 17:23:13 | Re : arrêter un timer ds une routine

mortalino

Membre Club

Une question bête !
Tes boutons, ils sont sur un UserForm ou sur la feuille ?
Si c'est sur la feuille, tes timers sont où ?

Sinon, privilégie la syntaxe Timer1.Enabled = False que l'interval à 0 (bien que cela fonctionne, il me semble)

@++


  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
jeudi 7 septembre 2006 à 17:26:16 | Re : arrêter un timer ds une routine

Achi

re,

mes bouton sont sur ma feuil, et mes timer sont ds  mon module,

et même Timer1.Enabled = False ne fonctionne pas!!!

Achi...

jeudi 7 septembre 2006 à 17:33:36 | Re : arrêter un timer ds une routine

mortalino

Membre Club


Un timer, en VB6, c'est un contrôle que tu es obligé de positionner sur une Form, sinon, il faut passer par des APIs.
Je conçois que tu puisses importer ce contrôle dans dans ton projet vba, mais j'ai du mal à imaginer son utilisation dans un module.

Désolé de ne pas vraiment comprendre, as tu plus de précisions à ce sujet stp. merci

@++


  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
jeudi 7 septembre 2006 à 17:35:04 | Re : arrêter un timer ds une routine

bipou

Réponse acceptée !

Bonjour,

je ne trouve pas cela très "clean" car par ce code tu rempli la pile de ta succession de procédure...

mais si tu insistes ceci fonctionne :

Public Sub Timer1_Timer()
If Worksheets(1).CommandButton3.ForeColor = &HFF& Then
Dim Start
    Start = Timer    ' Définit l'heure de début.
    Do While Timer < Start + 0.5
        DoEvents    ' Donne le contrôle à d'autres processus.
        If Worksheets(1).CommandButton3.ForeColor = &HFF& Then Worksheets(1).CommandButton3.Caption = ""
    Loop
    Timer2_Timer
End If
End Sub

Public Sub Timer2_Timer()
If Worksheets(1).CommandButton3.ForeColor = &HFF& Then
Dim Start
    Start = Timer    ' Définit l'heure de début.
    Do While Timer < Start + 0.5
        DoEvents    ' Donne le contrôle à d'autres processus.
        Worksheets(1).CommandButton3.Caption = "Annulation"
    Loop
Timer1_Timer
End If
End Sub

Private Sub CommandButton1_Click()
    Worksheets(1).CommandButton3.ForeColor = &HFF&
Timer1_Timer
End Sub

Private Sub CommandButton3_Click()
Worksheets(1).CommandButton3.ForeColor = &H0&
Worksheets(1).CommandButton3.Caption = "Annulation"
End Sub


 

jeudi 7 septembre 2006 à 22:13:33 | Re : arrêter un timer ds une routine

PCPT

Administrateur CodeS-SourceS
Réponse acceptée !
salut,

Mortalino -> "timer" = nom utilisé ici pour simuler mais en effet ce n'est pas un contrôle

Achi -> essaye comme çà :

'DANS TON MODULE
Public Timer1 As Boolean 
Public Timer2 As Boolean 
'
Public Sub Timer1_Timer() 
    
Dim Start As Long 

    
If Worksheets(1).CommandButton3.ForeColor = &HFF& Then 
        Start = 
Timer     ' Définit l'heure de début.
        
Do While Timer < Start + 0.5 
            
DoEvents     ' Donne le contrôle à d'autres processus.
            
If Worksheets(1).CommandButton3.ForeColor = &HFF& Then Worksheets(1).CommandButton3.Caption = "" 
            
If Not TimerThen Exit Do 
        
Loop 
        
Timer2 = True 
        
Call Timer2_Timer 
    
End If 
    
Timer1 = False 
End Sub 
'
Public Sub Timer2_Timer() 
    
Dim Start As Long 
    
If Worksheets(1).CommandButton3.ForeColor = &HFF& Then 
        Start = 
Timer     ' Définit l'heure de début.
        
Do While Timer < Start + 0.5 
            
DoEvents     ' Donne le contrôle à d'autres processus.
            Worksheets(1).CommandButton3.Caption = "Annulation" 
            
If Not Timer2 Then Exit Do 
        
Loop 
        
Timer1 = True 
        
Call Timer1_Timer 
    
End If 
    
Timer2 = False 
End Sub 



'DANS TON USERFORM OU WORKSHEET OU J'SAIS PAS TROP QUOI ^^
'
Private Sub CommandButton1_Click() 
    Worksheets(1).CommandButton3.ForeColor = &HFF& 
    
Timer1 = True 
    
Call Timer1_Timer 
End Sub 
'
Private Sub CommandButton3_Click()
    Timer1 = False
    Timer2 = False
    Worksheets(1).CommandButton3.ForeColor = &H0& 
    Worksheets(1).CommandButton3.Caption = "Annulation" 
End Sub


Coloration syntaxique automatique [AFCK]
       

++
PCPT   [AFCK]


Prenez un instant pour répondre à ce sondage svp

1 2

Cette discussion est classée dans : timer, ds, routine, arrêter


Répondre à ce message

Sujets en rapport avec ce message

Mettre un Timer ds une Class [ par flagyg ] Hello tlm,J'aimerais mettre un controle Timer dans un module de classe,on ferait comme ceci pour un winsock:dim W as new mswinsocklib.winsocksub mains pb d'ecriture ds un fichier texte [ par cissou06 ] Salut a tous!Je cree un fichier:Set Fsys = CreateObject("Scripting.FileSystemObject")Set MyFile = Fsys.CreateTextFile("D:\MyDoc\fichierIni.txt")et ens Problème urgent... [ par Chewba ] Bonjour à toutes et tous,Voici mon problème, je charge une form qui à pour propriété visible en false...et un autre form qui à un Timer...Seulement le URGENT: pb avec un timer [ par cissou06 ] Salut!Mon interface VB cree des fichiers et je dois detecter l'apparition de chacun d'eux. Au debut j'ai fait pour un seul en utilisant un timer avec récupération donnée précise ds 1 Datagrid [ par nikostaf ] bonjour,Je voudrai récupérer une donnée dans ma datagrid donc je fait Datagrid1.columns("nomchamp")CellValue(.......je sais pas comment faire pour réc RETOUR A LIGNE DS UNE MSGBOX [ par nagattaque ] Salut tout le monde...Voila j'aimerai faire un retour a la ligne dans une msgbox, comment faut il que je fasse ??merci d'avance...<img src=/imgs2/smil OUVRIR EXCEL [ par nagattaque ] Salut tout le monde...Voila j'ai un petit souci et je voulais savoir s'il y a une solution a mon probleme...Je suis sous access2000 et ds le code d'un Fenetre Dos ds une Formulaire VB [ par aldebarre ] BonjourEst -il possible d'ouvrir une fenetre DOSds un formulaire VB ou bien que la fenetre soit un formalair fils d'un formulaire MDI Si oui comment f utiliser imagelist ds un controle perso [ par Stephane ] salu a tousvoila je developpe un controle semblable au toolbar mais plus joli, j'aimerai pouvoir y integrer la propriété imagelist mais je ne sais pas recherche difficile!au secours... [ par soleildz ] salutComment chercher ds plusieurs listes??? je cherche comb =1/2/3/5 ds 'ListesD.List(0)=1/2/4/5/3 'ListesD.List(1)=1/2/3/4/5 'ListesD.List(2


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,900 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales