Reinitialiser projet vba par macro

drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008 - 30 juin 2008 à 11:56
 bigfish_le vrai - 30 juin 2008 à 17:58
Bonjour,
Je souhaiterai réinitialiser mon projet VB par macro.
Comme on éxécute une fonction Sub ou autre qui aurai la meme incidence que lorsque l'on clic sur le carré bleu vba pour réinitialiser.

Chui pas sur d'être compréhensible ...
Merci

24 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
30 juin 2008 à 12:17
Salut,

perso, pas trop compris !
Tu veux que ta Sub s'arrête en cours de fonctionnement, c'est ça ?

@++

le mystérieux chevalier,"Provençal, le gaulois"
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 12:49
ouai ou plutot que tout s'arrete.


Quand tu clic sur stop (carré bleu) dans visual basic, ça réinitialise tout ton projet. Eh ben moi je veux faire pareil mais en cliquand sur un bouton sur la feuille excel.


Attention: je ne sais pas si ca existe, c'est pour cela que je poste.


 


Merci
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
30 juin 2008 à 12:59
Si tu as beaucoup de procédures, ça me semble difficile à mettre en place.
Peut être avec Microsoft Extensibility (pour gérer l'IDE) mais pas trouver de Stop ou autre.

Si tu n'as que quelques procédures, tu peux tricher avec un Timer et un booléen dans tes proc, cependant, une partie de ton code s'exécutera forcément.

@++

le mystérieux chevalier,"Provençal, le gaulois"
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 13:04
Ok Merci Mortalino.
Le soucis c'est que a la base j'ai déja un timer mais il merde et tourne en boucle et je voudrais justement l'arreté. lol

Si tu avais un code pour un timer pour une répétition toute les x minutes ...  et surtout pour l'arreter. (j'ai pris celui de Cathy astuce.)
Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
30 juin 2008 à 13:09
me suis pas fait chier, j'ai créer un ocx (usercontrol) avec un timer dessus en VB6, que j'ai importer dans mon VBA. Fait donc pareil si tu as vb6.

Sinon, il y a des codes pour utiliser les timer, ou même l'api SetTimer.

Pour ton souci de départ, cmbine à deux balles :
Tu fais une simulation d'appui touches sur [CTRL Pause]

@++

le mystérieux chevalier,"Provençal, le gaulois"
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
30 juin 2008 à 13:14
salut,

moteur : timer vba
3e lien

http://www.vbfrance.com/codes/TIMER-VBA_39308.aspx

++
Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp  
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 13:17
Merci a vous deux mais je cherche du code. Je fais un programme qui serai lisible sur n'importe quel pc donc pas d'installtion d'ocx.
Avez- vous autre chose ?
Merci
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
30 juin 2008 à 13:49
et excel il est fourni avec tous les PC?
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 13:52
oui quand meme ...
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 13:53
mais c'est excel 2002 SP3 et je crois meme que je n'ai pas tout les modules
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
30 juin 2008 à 13:54
pis regarde le premier lien au moins :)
MOTEUR : source&r=timer+vba&dotnet=2 http://www.vbfrance.com/recherche.aspx?tr=source&r= timer +vba&dotnet =2
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 14:07
Merci PCPT J'avais regardé un temps mais ayant trouvé celui de cathy j'avais un peu laissé tombé et mis le code de coté.
Je n'avais pas vu celui la...
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 14:11
Sinon saurais - tu comment le paramétrer ?


Merci
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
30 juin 2008 à 14:41
apparemment il y a un excel d'exemple, je présume que c'est indiqué ^^

sinon je suppose :
copier le code dans une module de classe que tu appelleras par exemple Cls_Timer

puis dans ton userform en haut : private withevents Timer1 as Cls_Timer

dons ton _Load (ou équivalent pour VBA)
set Timer1 = new Cls_Timer
Timer1.interval = 100
Timer1.enabled = true

et la classe te renvoie l'évènement tous les 100ms, donc dans ton code... dans le combo de gauche tu vas avoir Timer1 , avec  l'évènement Timer() dans le combo de droite
tu sélectionnes et mets ton code dans ce nouvel évènement

n'oublie pas de détruire ta classe en sortie
donc dans le _Unload du userform (ou équivalent pour VBA)
Timer1.enabled = false
set Timer1 = nothing

çà devrait être bon ;)
++
Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp  
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 15:40
Merci PCPT Mais je n'arrive pas a télécharger le fichier excel... ^^
Merci pour ton explication
Je vais essayer.
Peux tu voir sinon pour le lien car d'apres le screen j'aimerais bien avoir le fichier excel ...
Merci
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
30 juin 2008 à 15:50
...testé, le lien du ZIP est OK et le XLS fourni est opérationnel
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 15:59
Ok merci donc puis je te demander un petit service ? ...
Me le mettre sur un autre serveur car ici je ne suis pas l'administrateur du pc donc ca doit bloquer .

Merci beaucoup.
Si c'est trop demander tant pis je me débrouillerais .
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
30 juin 2008 à 16:31
si je commence à héberger toutes les sources j'ai pas fini....
désolé
télécharge-le d'un poste qui a les droits ou de chez toi

au pire t'as juste à faire un copier-coller, le code de la classe est sur la page de source, t'as même pas besoin de télécharger
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 16:51
C'est ce que j'ai fait mais ca ne marche pas.
Ce n'est pas grave je vais me débrouiller quand meme.

Merci quand meme pour ton aide ainsi que Mortalino.
0
drik56 Messages postés 127 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 8 juillet 2008
30 juin 2008 à 16:58
Sinon je t'embete encore un peu mais tant que je te tiens...

Voici mon code pour mon timer:
Dim Lheure As Double
Dim Interval As Integer

Sub LancerTimer(NbM As Integer)
'L'application ExecutionTimer se lancera toutes les 0 heure, Interval minute et 0 seconde
   Interval = NbM
   Application.OnTime Now + TimeSerial(0, Interval, 0), "ExecutionTimer"
End Sub


Sub ArretTimer()
   On Error Resume Next
   Application.OnTime Lheure, "ExecutionTimer", , False
End Sub


Sub ExecutionTimer()
   "Mon module" 'Lancer au bout de NbM minutes


   Lheure = Now + TimeSerial(0, Interval, 0)
   Application.OnTime Lheure, "ExecutionTimer"
End Sub

Le probleme est que lorsque je le lance ca marche, 1 fois, 2 fois.. et puis quand je veux l'arreter il se lance en boucle et ne s'arrete pas... Saurais- tu d'ou cela viens ?
0
Rejoignez-nous