Zum aufzeichnen von Maus-Klicks in Excel-VBA?

Ich versuche ein makro machen, dass die Datensätze, welche ein Benutzer darauf geklickt wird, zeichnet dann die Koordinaten der Maus und die Verzögerung zwischen den Klicks. Diese werden dann wiederholen Sie den Vorgang nach einigen anderen SendKey änderungen. Wie kann ich erkennen, wenn ich auf die Maus, wenn das makro ausgeführt wird? Ich weiß schon, wie man die Koordinaten und zeichnen Sie die Verspätung, aber was ist die beste Vorgehensweise für die Erkennung der Maus klicken Sie auf und auch, was wäre der beste Weg, um zu speichern alle diese Informationen? Eine text-Datei? Hier ist ein Ausschnitt aus der Maus, klicken Sie auf Ereignisse, die ich benutze:

Public Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Public Type POINTAPI
x As Long
y As Long
End Type
Public pos As POINTAPI ' Declare variable

Public 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)
Public Const MOUSEEVENTF_LEFTDOWN = &H2
Public Const MOUSEEVENTF_LEFTUP = &H4
Public Const MOUSEEVENTF_RIGHTDOWN As Long = &H8
Public Const MOUSEEVENTF_RIGHTUP As Long = &H10

Public Sub SingleClick()
Dim xval, yval
xval = GetSetting("Will's Program Sheet", "DPS Calibration", "PROGRAM X")
yval = GetSetting("Will's Program Sheet", "DPS Calibration", "PROGRAM Y")
Select Case xval
Case Is = "" 'Runs calibrate if it can't find an xval
    Call CALIBRATE
    End
End Select
  SetCursorPos xval, yval  'x and y position
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
End Sub

Gibt es ein anderes makro aufruft SingleClick wenn es sich bewegt, um eine Konstante x-und y-Klicks, einige Magie, und kehrt zu der position, bevor das makro gestartet. Also, um zu wiederholen, ist es eine einfach oder leicht zu verstehen, Methode zur Aufzeichnung mehrerer Klicks und Verzögerungen zwischen Klicks und Wiedergabe durch Excel-VBA?

  • Ich meine nicht, Strich Ihre Hoffnungen, aber ich denke, das könnte nicht möglich sein. Excel hat keine onmouseclick Ereignis, dass ich kenne.
  • Was ist mit der user32 Bibliothek? Für Visual Studio ist es möglich, aber warum nicht Excel-VBA? msdn.microsoft.com/en-us/library/aa231228(v=vs. 60).aspx
  • Was genau wollen Sie erreichen? Warum tun Sie verfolgen möchten, die Maus klickt und die Koordinaten so?
  • Ich bin mit einem CNC-Programm, und es ist erforderlich zu speichern Fräsbahnen in einer bestimmten Reihenfolge, und wir haben, um es zu speichern für 2 Maschinen. Ich möchte Excel zu automatisieren den Prozess von der Aufnahme, welche Klicks ich gemacht und replay Sie für die zweite Maschine.
InformationsquelleAutor icebird76 | 2015-04-20
Schreibe einen Kommentar