Ringkasan
Anda dapat melakukan panggilan Windows API (antarmuka pemrograman aplikasi) ke DLL Windows Microsoft (Pustaka tautan dinamis) untuk mendapatkan dan mengatur posisi kursor saat ini. Posisi saat ini bisa diperoleh dengan menggunakan fungsi GetCursorPos di USER32.DLL.
Informasi Selengkapnya
Microsoft Excel tidak memiliki fungsionalitas bawaan untuk mendapatkan atau mengatur posisi kursor. Namun, Anda bisa menggunakan pernyataan Deklarasi dalam Microsoft Excel Visual Basic makro Applications untuk memanggil fungsi Microsoft Windows untuk mengakses posisi saat ini. Anda juga dapat menggunakan fungsi SetCursorPos lainnya untuk mengatur posisi kursor. Fungsi SetCursorPos dapat digunakan dalam struktur perulangan untuk memindahkan kursor di seluruh layar.
Microsoft menyediakan contoh prosedur Visual Basic for Applications untuk ilustrasi saja, tanpa jaminan baik tersurat maupun tersirat, termasuk, tetapi tidak terbatas pada jaminan daya jangkauan tersirat dan/atau kesesuaian untuk tujuan tertentu. Artikel Visual Basic dokumen dalam artikel ini disediakan 'sebagaimana itu' dan Microsoft tidak menjamin bahwa mereka dapat digunakan dalam semua situasi. Sementara profesional dukungan Microsoft bisa membantu menjelaskan fungsionalitas makro tertentu, mereka tidak akan memodifikasi contoh-contoh ini untuk menyediakan fungsionalitas tambahan, juga tidak akan membantu Anda membangun makro untuk memenuhi kebutuhan tertentu. Jika memiliki pengalaman pemrograman terbatas, Anda mungkin ingin berkonsultasi dengan salah satu Penyedia Solusi Microsoft. Penyedia Solusi menawarkan berbagai layanan berbasis biaya, termasuk membuat makro kustom. Untuk informasi selengkapnya tentang Penyedia Solusi Microsoft, hubungi Layanan Informasi Pelanggan Microsoft di (800) 426-9400.
CONTOH
-
Ketikkan kode berikut ini ke dalam modul baru:
' 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 -
Klik di mana saja di dalam teks Get_Cursor_Pos rutin dan tekan tombol F5 untuk menjalankan Get_Cursor_Pos makro.
Anda akan menampilkan kotak pesan dengan koordinat posisi penunjuk mouse saat ini. -
Klik di mana saja di dalam teks Set_Cursor_Pos rutin dan tekan tombol F5 untuk menjalankan Set_Cursor_Pos makro.
Kursor akan berpindah diagonal ke bawah di layar.