Özet
İmleç konumunu Windows ve ayarlamak için bir Microsoft Windows DLL'si (dinamik bağlantı Kitaplığı) olan bir API'yi (uygulama programlama arabirimi) arayabilirsiniz. Geçerli konum, çalışma sayfalarındaki GetCursorPos işlevi kullanılarak USER32.DLL.
Ek Bilgi
Microsoft Excel imlecin konumunu almak veya ayarlamak için yerleşik işleve sahip değildir. Bununla birlikte, bir Microsoft Excel Visual Basic for Applications makrossinde Declare deyimini kullanarak geçerli konuma erişmek için Microsoft Windows işlevini çağır kullanabilirsiniz. İmleç konumunu ayarlamak için Başka bir SetCursorPos işlevi de kullanabilirsiniz. SetCursorPos işlevi, imleci ekran boyunca hareket ettiren bir döngü yapısında kullanılabilir.
Microsoft, satılabilirlik Visual Basic for Applications/veya belirli bir amaca uygunluk ile ilgili zımni garantiler dahil ancak bunlarla sınırlı kalmadan, yalnızca çizim için açıklamalı veya zımni garantiler olmaksızın, yalnızca çizime yönelik örnek örnekler sunar. Bu Visual Basic sağlanan yordamlar 'olduğu gibi' ve Microsoft da her durumda kullanılamalarını garanti değildir. Microsoft destek uzmanları belirli bir makronun işlevselliğini açıklamaya yardımcı olabilir, ancak ek işlevler sağlamak için bu örnekleri değiştirmezler ve sizin özel ihtiyaçlarınızı karşılayacak makrolar oluşturmanıza da yardımcı olmazlar. Sınırlı programlama deneyiminiz varsa, Microsoft Çözüm Sağlayıcılarından biri ile görüşmeniz iyi olabilir. Çözüm Sağlayıcıları, özel makrolar oluşturma da dahil olmak üzere ücret tabanlı çok çeşitli hizmetler sunar. Microsoft Çözüm Sağlayıcıları hakkında daha fazla bilgi için (800) 426-9400 sitesinden Microsoft Müşteri Bilgileri Hizmeti'ne çağrıyın.
ÖRNEKLER
-
Yeni bir modüle aşağıdaki kodu yazın:
' 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 -
Makro yordamının metni içinde herhangi bir Get_Cursor_Pos tıklayın ve makroyu çalıştırmak için F5 Get_Cursor_Pos basın.
Fare işaretçisinin geçerli konumunun koordinatlarıyla birlikte bir ileti kutusu görüntülenir. -
Makro yordamının metni içinde herhangi bir Set_Cursor_Pos tıklayın ve makroyu çalıştırmak için F5 tuşuna Set_Cursor_Pos basın.
İmleç, ekran boyunca çapraz olarak aşağı hareket eder.