Red de conocimiento informático - Aprendizaje de programación - Ayuda de Excel: use VBA para controlar el mouse y moverlo a cualquier posición

Ayuda de Excel: use VBA para controlar el mouse y moverlo a cualquier posición

El código es el siguiente:

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 Const MOUSEEVENTF_ABSOLUTE = &H8000 'Especifique que el mouse usa un sistema de coordenadas absoluto y que la pantalla se divide uniformemente en 65535 x 65535 celdas en las direcciones horizontal y vertical

Private Const MOUSEEVENTF_MOVE = &H1 'Mover el mouse

Private Const MOUSEEVENTF_LEFTDOWN = &H2 'Simular presionar el botón izquierdo del mouse

Private Const MOUSEEVENTF_LEFTUP = &H4 'Simular presionar el botón izquierdo del mouse

Declarar función GetCursorPos Lib "user32" (lpPoint como POINTAPI) mientras

Declarar función GetSystemMetrics32 Lib "user32" Alias"GetSystemMetrics" (ByVal nIndex mientras) mientras 'Obtener resolución

Escriba POINTAPI

X mientras

Y mientras

Tipo final

Subpantalla privada_Click(ByVal X As Long, ByVal Y As Long) 'Mover y hacer clic

mw = , mw, mh, 0, 0

mouse_event MOUSEEVENTF_ LEFTDOWN O MOUSEEVENTF_LEFTUP, 0, 0, 0, 0

Finalizar sub

Función pública getmouse_x_y() como coordenadas de POINTAPI

GetCursorPos getmouse_x_y

GetCursorPosGetmouse_x_y

Finalizar función getmouse_x_y

Finalizar función getmouse_x_y

Finalizar función

Sub DisplayMonitorInfo()

Atenuar X mientras sea largo, Y mientras sea largo

X = GetSystemMetrics32(0) ' Ancho (píxeles)

Y = GetSystemMetrics32(1) 'Alto (píxeles)

MsgBox "La resolución de la pantalla es: " & X & " × " & Y & "píxeles"

End Sub

>

Sub GetPosition() 'Obtener coordenadas

Depurar.Imprimir getmouse_x_y.X, getmouse_x_y.Y

[D2] = getmouse_x_y.X

[ D3] = getmouse_x_y.Y

Fin Sub

Sub prueba()

Screen_Click [D2], [D3]

Fin Sub