Samenvatting

U kunt een Windows API (application programming interface) bellen naar een Microsoft Windows DLL (dynamic-link Library) om de huidige cursorpositie te krijgen en in te stellen. De huidige positie kan worden verkregen met de functie GetCursorPos in USER32.DLL.

Meer informatie

Microsoft Excel heeft niet de ingebouwde functionaliteit om de cursorpositie te krijgen of in te stellen. U kunt de instructie Declare echter wel gebruiken in een Microsoft Excel Visual Basic for Applications macro om een Microsoft-Windows te bellen om toegang te krijgen tot de huidige positie. U kunt ook een andere functie SetCursorPos gebruiken om de cursorpositie in te stellen. De functie SetCursorPos kan worden gebruikt in een lusstructuur om de cursor over het scherm te verplaatsen.Microsoft geeft voorbeelden van Visual Basic for Applications procedures ter illustratie, zonder garantie uitgedrukt of impliciet, inclusief, maar niet beperkt tot de impliciete garanties van verkoopbaarheid en/of geschiktheid voor een bepaald doel. De Visual Basic procedures in dit artikel worden 'zoals het is' verstrekt en Microsoft garandeert niet dat ze in alle situaties kunnen worden gebruikt. Hoewel ondersteuningsmedewerkers van Microsoft u kunnen helpen bij het uitleggen van de functionaliteit van een bepaalde macro, worden deze voorbeelden niet gewijzigd om extra functionaliteit te bieden, en helpen ze u ook niet om macro's te maken die aan uw specifieke behoeften voldoen. Als u een beperkte programmeerervaring hebt, kunt u een van de Microsoft Solution Providers raadplegen. Solution Providers bieden een breed scala aan op kosten gebaseerde services, waaronder het maken van aangepaste macro's. Voor meer informatie over Microsoft Solution Providers belt u met Microsoft Customer Information Service op (800) 426-9400.

VOORBEELDEN

  1. Typ de volgende code in een nieuwe module:

    ' 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. Klik ergens in de tekst van de Get_Cursor_Pos routine en druk op de F5-toets om de macro Get_Cursor_Pos uitvoeren.Er wordt een berichtvak weergegeven met de coördinaten van de huidige positie van de muisaanwijzer.

  3. Klik ergens in de tekst van de Set_Cursor_Pos routine en druk op de F5-toets om de macro Set_Cursor_Pos uitvoeren.

De cursor beweegt diagonaal omlaag over het scherm.

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.