Simulation souris [Résolu]

Signaler
Messages postés
29
Date d'inscription
samedi 30 juin 2007
Statut
Membre
Dernière intervention
2 janvier 2008
-
Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
-
Bonsoir et bonne année 2008

J'ai trouvé ce code sur ce site qui simule le mouvement et les différents clic d'une souris.
Mais je ne sait pas comment l'utiliser
Est-ce du VBS, VBA
Ca marche dans Excel

Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Private Declare Function SetCursorPos& Lib "user32" (ByVal X As Long, ByVal Y As Long)

Const MOUSEEVENTF_ABSOLUTE = &H8000
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MIDDLEDOWN = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10
Const MOUSEEVENTF_WHEEL = &H80
Const MOUSEEVENTF_XDOWN = &H100
Const MOUSEEVENTF_XUP = &H200
Const WHEEL_DELTA = 120
Const XBUTTON1 = &H1
Const XBUTTON2 = &H2

Private Sub Command1_Click()
X = 30
Y = 755
'position de la souris au coordonnée X et Y
'(ici si vous êtes en 1024 x 768,cela va cliquer sur le bouton 'Démarrer' de la barre des taches)
SetCursorPos X, Y
'Le bouton gauche de la souris s'enfonce
Call mouse_event(MOUSEEVENTF_LEFTDOWN + MOUSEEVENTF_ABSOLUTE, Me.Left, Me.Top, 0, 0) '
'le bouton gauche de la souris se relache
Call mouse_event(MOUSEEVENTF_LEFTUP + MOUSEEVENTF_ABSOLUTE, Me.Left, Me.Top, 0, 0)
End Sub

2 réponses

Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
10
Bonsoir Didieraucun, bonsoir Jmfmarques,

Il n'y a aucun problème sous VBA. Le code est parfaitement compatible.

Pour répondre à : "Mais je ne sais pas comment l'utiliser "

=> Ouvre VBA, (raccourcis ALT+F11)
=> dans VBA, créer une userform (feuille) dans le classeur courant ("classeur1.xls", probablement) avec un click droit sur le nom, et choisi "Insertion" puis "UserForm".
=> Avec la boite d'outil, insére un bouton
=> double clik sur le bouton, pour rentrer sur la page de code relatif à l'userform.
=> supprime les deux lignes de code, Sub CommandButton1, etc...
=> coller le code que tu proposes,
=> change le nom "Command1" en "CommandButton1", donc la première ligne sera :
Private Sub Commandbutton1_Click()
=> Lance le programme pour le tester. Pour cela, sélectionne l'userform1 et click sur la flèche verte.

FIN

Amicalement,
Us.
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Bonsoir,


 


1) C'est du VB se servant de fonctions de l'Api de Windows.
2) je ne vois rien dans ce code qui l'empêcherait de fonctionner sou VBA, pour autant qu'existe un bouton de commande nimmé Command1

3) et surtout : pourquoi ne l'essayes-tu pas sous VBA, plutôt que de poser cette question ? Tu en connaîtrais déjà la réponse, non ?