eine frage und zwar es ist ja möglich per VBA die Mausposition auszulesen,ist es auch möglich per vba die maus zu bewegen ? Also z.B vom Bildschirm rechts nach Links !
Danke Christan
Code eingefügt mit Syntaxhighlighter 1.16
Option Explicit
Private Declare Function GetCursorPos Lib "user32" (cPoint As POINTAPI) As Long
Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Private Type POINTAPI
x As Long
y As Long
End Type
Sub Where_Mouse_is()
Dim tPoint As POINTAPI
Dim x As Long
x = GetCursorPos(tPoint)
MsgBox "Cursor ist an Position:" & vbLf & tPoint.x & "," & tPoint.y
End Sub
Sub Move_Cursor_to()
Dim x As Long, y As Long, n As Long
x = 50
y = 50
n = SetCursorPos(x, y)
End Sub
Sub Move_Cursor_on_Screen()
Dim y As Long, n As Long, i As Long, t As Double
y = 1
For i = 1 To 30
n = SetCursorPos(i * i, y)
t = 1 'Sekunden
Application.Wait (Now + TimeValue("00:00:0" & t))
y = y + i * 2
Next i
End Sub
Um die Maus in Excel mit VBA zu bewegen, kannst du die Funktionen GetCursorPos
und SetCursorPos
verwenden. Hier ist eine einfache Anleitung, wie du dies umsetzen kannst:
Öffne den VBA-Editor:
ALT + F11
, um den VBA-Editor zu öffnen.Füge ein neues Modul hinzu:
Einfügen > Modul
.Füge den folgenden Code ein:
Option Explicit
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Private Type POINTAPI
x As Long
y As Long
End Type
Sub Move_Cursor_to()
Dim x As Long, y As Long
x = 100 ' X-Position
y = 100 ' Y-Position
SetCursorPos x, y ' Cursor an die Position setzen
End Sub
Führe das Makro aus:
ALT + F8
, wähle Move_Cursor_to
und klicke auf Ausführen
.Excel-Cursor bewegt sich nicht:
Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen
und aktiviere die entsprechenden Optionen.Fehlermeldung beim Ausführen des Makros:
GetCursorPos
und SetCursorPos
nicht fehlen.Falls du keine VBA-Programmierung verwenden möchtest, kannst du auch andere Tools oder Skripte für das Maus bewegen lassen verwenden. Hier einige Alternativen:
Hier sind einige Beispielcodes, die dir zeigen, wie du die Maus bewegen kannst:
Bewege die Maus in einer Schleife:
Sub Move_Cursor_on_Screen()
Dim y As Long, i As Long
y = 1
For i = 1 To 30
SetCursorPos i * 10, y ' Cursor bewegt sich
Application.Wait (Now + TimeValue("00:00:01")) ' Warte 1 Sekunde
Next i
End Sub
Maus automatisch bewegen lassen:
Application.Wait
erlaubt dir, zeitliche Verzögerungen einzubauen, was nützlich sein kann, wenn du die Mausbewegung synchronisieren möchtest.1. Kann ich die Maus mit Excel VBA nur auf dem aktiven Bildschirm bewegen?
Ja, die Funktionen SetCursorPos
bewegen die Maus auf dem aktiven Bildschirm, unabhängig davon, ob Excel im Vordergrund ist oder nicht.
2. Ist es sicher, VBA-Skripte aus dem Internet zu verwenden? Es ist wichtig, nur Skripte von vertrauenswürdigen Quellen zu verwenden, da nicht alle Skripte sicher sind und schädliche Auswirkungen haben können.
3. Gibt es eine Möglichkeit, die aktuelle Mausposition anzuzeigen?
Ja, du kannst die Funktion GetCursorPos
verwenden, um die aktuelle Position der Maus zu ermitteln und sie beispielsweise in einer MsgBox anzuzeigen.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen