Pierakstīties, izmantojot Microsoft
Pierakstīties vai izveidot kontu
Sveicināti!
Atlasīt citu kontu.
Jums ir vairāki konti
Izvēlieties kontu, ar kuru vēlaties pierakstīties.

Kopsavilkums

Varat veikt api Windows (lietojumprogrammu programmēšanas interfeiss) izsaukumu uz Microsoft Windows DLL (dinamisko saišu bibliotēku), lai iegūtu un iestatītu pašreizējo kursora pozīciju. Pašreizējo pozīciju var iegūt, izmantojot funkciju GetCursorPos programmā USER32.DLL.

Papildinformācija

Microsoft Excel nav iebūvētās funkcionalitātes, lai iegūtu vai iestatītu kursora novietojumu. Tomēr varat izmantot priekšrakstu Declare makro makro programmā Microsoft Excel Visual Basic for Applications, lai piezvanītu Microsoft Windows, lai piekļūtu pašreizējai pozīcijai. Varat arī izmantot citu funkciju SetCursorPos, lai iestatītu kursora novietojumu. Funkciju SetCursorPos var izmantot cilpas struktūrā, lai pārvietotu kursoru pāri ekrānam.


Microsoft piedāvā Visual Basic for Applications procedures for illustration only, without warranty either expressed or implied, including, but not limited to the implied warranties of merchantability and/or fitness for a particular purpose. Šajā Visual Basic procedūras ir sniegtas "tāds, kāda tā ir", un Microsoft negarantē, ka tās var izmantot visās situācijās. Lai gan Microsoft atbalsta speciālisti var palīdzēt izskaidrot noteikta makro funkcionalitāti, viņi šos piemērus nemodificēs, lai nodrošinātu papildu funkcionalitāti, kā arī nepalīdzēs izveidot makro, lai atbilstu jūsu konkrētajām vajadzībām. Ja programmēšanas iespējas ir ierobežotas, iespējams, vēlēsities konsultēties ar kādu no Microsoft risinājumu nodrošinātājiem. Risinājumu nodrošinātāji piedāvā plašu maksas pakalpojumu klāstu, tostarp pielāgotu makro izveidi. Lai iegūtu papildinformāciju par Microsoft risinājumu nodrošinātājiem, zvaniet Microsoft klientu informācijas pakalpojumam (800) 426-9400.

PIEMĒRI

  1. Jaunā modulī ierakstiet šādu kodu:

    ' 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. Noklikšķiniet jebkur ikdienas Get_Cursor_Pos un nospiediet taustiņu F5, lai izpildītu Get_Cursor_Pos makro.

    Tiek parādīts ziņojuma lodziņš ar peles rādītāja pašreizējās atrašanās vietas koordinātām.

  3. Noklikšķiniet jebkur ikdienas Set_Cursor_Pos un nospiediet taustiņu F5, lai izpildītu Set_Cursor_Pos makro.

Kursors tiks pārvietots pa diagonāli uz leju pāri ekrānam.

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.

Vai šī informācija bija noderīga?

Cik lielā mērā esat apmierināts ar valodas kvalitāti?
Kas ietekmēja jūsu pieredzi?
Nospiežot Iesniegt, jūsu atsauksmes tiks izmantotas Microsoft produktu un pakalpojumu uzlabošanai. Jūsu IT administrators varēs vākt šos datus. Paziņojums par konfidencialitāti.

Paldies par jūsu atsauksmēm!

×