Boucle While...Wend . Timer et temporisation

Ce type de temporisation, basé sur la répétition d'une boucle un grand nombre de fois a le défaut de dépendre étroitement de la vitesse de l'ordinateur et de ne pas être constante selon que l'ordinateur est plus ou moins occupé.
Pour obtenir une attente d'une durée déterminée, on peut utiliser la fonction Timer, qui renvoie une date en secondes (c'est la durée en secondes écoulée depuis minuit : il donc mieux travailler de jour et vérifier que l'horloge de l'ordinateur est exacte!).
Timer fournit cette date avec un certain nombre de décimales, cependant elle n'est exacte qu'à 1/100ème de seconde près environ, peut-être davantage sur un ordinateur peu puissant.
Cela peut se comprendre, un tableur n'ayant pas vocation à servir de chronomètre....
Toutefois on peut s'en servir pour réaliser une temporisation plus régulière : modifier le script 6b comme ci-dessous
 
Script 6c
Sub Click(Source As Buttoncontrol)
 For i=0 To 4
  debut=Timer
  Set r=[a].newRectangle(2000+100*i,1000,2400+100*i,1400)
  r.edgedashstyle=$none
  r.background.pattern=1
  Set r.background.color=currentApplication.colors(i*16+16)
  While (Timer-debut)<5
  Wend
 Next
End Sub

 
©2003 Scientillula.net