Riepilogo

È possibile effettuare una chiamata api Windows (application programming interface) a una DLL di Microsoft Windows (libreria a collegamento dinamico) per ottenere e impostare la posizione corrente del cursore. La posizione corrente può essere ottenuta usando la funzione GetCursorPos in USER32.DLL.

Ulteriori informazioni

Microsoft Excel non ha la funzionalità incorporata per ottenere o impostare la posizione del cursore. Tuttavia, è possibile usare l'istruzione Declare in una macro Microsoft Excel Visual Basic, Applications Edition per chiamare una funzione Windows Microsoft per accedere alla posizione corrente. È anche possibile usare un'altra funzione SetCursorPos per impostare la posizione del cursore. La funzione SetCursorPos può essere usata in una struttura a ciclo continuo per spostare il cursore sullo schermo.Microsoft fornisce esempi di procedure Visual Basic, Applications Edition solo per illustrazione, senza garanzie espresse o implicite, incluse, ma non limitate alle garanzie implicite di esercentibilità e/o idoneità per uno scopo specifico. Le Visual Basic descritte in questo articolo sono fornite "così come sono" e Microsoft non garantisce che possano essere usate in tutte le situazioni. Anche se i professionisti del supporto tecnico Microsoft possono spiegare le funzionalità di una particolare macro, non modificheranno questi esempi per fornire funzionalità aggiuntive, né aiuteranno a creare macro in base alle specifiche esigenze. Se l'esperienza di programmazione è limitata, è possibile consultare uno dei provider di soluzioni Microsoft. I provider di soluzioni offrono un'ampia gamma di servizi a pagamento, tra cui la creazione di macro personalizzate. Per altre informazioni sui Provider di soluzioni Microsoft, chiamare il Servizio informazioni sul cliente Microsoft al numero (800) 426-9400.

ESEMPI

  1. Digitare il codice seguente in un nuovo modulo:

    ' Access the GetCursorPos function in user32.dll      Declare Function GetCursorPos Lib "user32" _      (lpPoint As POINTAPI) As Long      ' Access the GetCursorPos function in user32.dll      Declare Function SetCursorPos Lib "user32" _      (ByVal x As Long, ByVal y As Long) As Long      ' GetCursorPos requires a variable declared as a custom data type      ' that will hold two integers, one for x value and one for y value      Type POINTAPI         X_Pos As Long         Y_Pos As Long      End Type      ' Main routine to dimension variables, retrieve cursor position,      ' and display coordinates      Sub Get_Cursor_Pos()      ' Dimension the variable that will hold the x and y cursor positions      Dim Hold As POINTAPI      ' Place the cursor positions in variable Hold      GetCursorPos Hold      ' Display the cursor position coordinates      MsgBox "X Position is : " & Hold.X_Pos & Chr(10) & _         "Y Position is : " & Hold.Y_Pos      End Sub      ' Routine to set cursor position      Sub Set_Cursor_Pos()      ' Looping routine that positions the cursor         For x = 1 To 480 Step 20            SetCursorPos x, x            For y = 1 To 40000: Next         Next x      End Sub
  2. Fare clic in un punto qualsiasi all'interno del testo della routine Get_Cursor_Pos e premere F5 per eseguire la macro Get_Cursor_Pos macro.Verrà visualizzata una finestra di messaggio con le coordinate della posizione corrente del puntatore del mouse.

  3. Fare clic in un punto qualsiasi all'interno del testo della routine Set_Cursor_Pos e premere F5 per eseguire la macro Set_Cursor_Pos macro.

Il cursore si sposterà diagonalmente verso il basso sullo schermo.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.