Bonjour à tous,
j'aurais besoin de vos lumières s'il vous plait.
J'ai un petit programme vba qui commande des vibrateurs. Je veux pouvoir changer, lorsque je le souhaite, la fréquence des vibrations alors qu'une macro tourne déjà. Mon problème est a ce moment là : chaque macro vibr1a et vibr1b tourne très bien toute seule mais lorsque je veux passer de l'une a l'autre directement, excel bug. Cependant si je clique sur la macro arret entre les deux tout va bien... Des idées??
merci d'avance
voici le code
Public WithEvents Vibr As PhidgetLED
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Dim ok As Boolean 'booleen pour pouvoir arreter une macro
Dim a As Integer 'permet de regler la durer de chaque période de vibration
Dim b As Integer 'permet de regler la durer de chaque période d'attente
Dim i As Integer 'permet de choisir le vibreur à activer
Private Sub vibration()
Set Vibr = New PhidgetLED
Vibr.Open
Vibr.WaitForAttachment (3000)
arret
ok = True
Do While ok
DoEvents
Vibr.DiscreteLED(i) = 100 'lancer la vibration
Sleep a
Vibr.DiscreteLED(i) = 0 'arreter la vibration
Sleep b
Loop
End Sub
Sub vibr1a()
a = 500
b = 500
i = 1
vibration
End Sub
Sub vibr1b()
a = 500
b = 1500
i = 1
vibration
End Sub
Sub arret()
ok = False
End Sub