Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Win+ Taste per VBA

Forumthread: Win+ Taste per VBA

Win+ Taste per VBA
22.01.2022 10:27:29
Oraculix
Hallo Alle!
In meiner Userform1 möchte mit einem Comandbutton die Windows Bildschirmlupe aufrufen.
Leider Funktioniert dieser
VBA Code unter Windows 11 nicht.
Frage: Wie kann ich per Comandbutten in der Userform1 die Bildschirmlupe aufrufen?
Tastenkürzel Win + Plus
Option Explicit
Private Declare Sub keybd_event Lib "user32" ( _
ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
Const KEYEVENTF_KEYUP = &H2
Const VK_LWIN = &H5B
Const plus = &H6B

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Call keybd_event(VK_LWIN, 0, 0, 0) 'Windows Taste
Call keybd_event(plus, 0, 0, 0)
End Sub
Gruß
Oraculix
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Win+ Taste per VBA
22.01.2022 11:45:09
Mister
Hallo,
nach meinen Recherchen ist es nicht möglich das Halten der Windowstaste zu simulieren. Mit Application.SendKeys ("^{ESC}"), True wird die Windowstaste gedrückt aber nicht gehalten. Die Bildschirmlupe kannst du mit:

Sub Keys()
Dim wsh As Object
Dim strProgramName As String
Set wsh = VBA.CreateObject("WScript.Shell")
wsh.Run "C:\WINDOWS\system32\Magnify.exe"
End Sub
starten.
Gruß
Martin
Anzeige
Genial Vielen Dank!!
22.01.2022 16:00:56
Oraculix
Genial Vielen Dank!!
Es funktioniert genau wie ich es wollte.
Gruß
Oraculix
AW: Genial Vielen Dank!!
22.01.2022 20:09:38
Mister
Sehr gerne
;
Anzeige

Infobox / Tutorial

Windows Bildschirmlupe über VBA steuern


Schritt-für-Schritt-Anleitung

Um die Windows Bildschirmlupe mit VBA über einen CommandButton in deiner Userform1 zu starten, kannst du die folgenden Schritte befolgen:

  1. Öffne den VBA-Editor in Excel (ALT + F11).
  2. Füge eine Userform hinzu, falls noch nicht vorhanden.
  3. Platziere einen CommandButton auf der Userform.
  4. Füge den folgenden VBA-Code in das Click-Ereignis des CommandButtons ein:
Private Sub CommandButton1_Click()
    Dim wsh As Object
    Set wsh = VBA.CreateObject("WScript.Shell")
    wsh.Run "C:\WINDOWS\system32\Magnify.exe"
End Sub
  1. Schließe den VBA-Editor und teste die Userform. Bei einem Klick auf den Button sollte nun die Bildschirmlupe geöffnet werden.

Häufige Fehler und Lösungen

  • Problem: Die Bildschirmlupe öffnet sich nicht.

    • Lösung: Überprüfe den Pfad zu "Magnify.exe". Der Standardpfad ist C:\WINDOWS\system32\Magnify.exe. Stelle sicher, dass das Programm dort vorhanden ist.
  • Problem: Der CommandButton funktioniert nicht wie gewünscht.

    • Lösung: Stelle sicher, dass der Code im richtigen Ereignis (Click) des CommandButtons platziert ist.

Alternative Methoden

Wenn die Verwendung von VBA nicht die gewünschten Ergebnisse bringt, kannst du folgende Alternativen in Betracht ziehen:

  1. Verwendung von Tastenkombinationen:

    • Du kannst die Bildschirmlupe auch direkt mit der Tastenkombination Win + Plus öffnen, ohne VBA zu verwenden.
  2. Verwendung von Batch-Dateien:

    • Erstelle eine Batch-Datei, die die Bildschirmlupe öffnet. Der Inhalt könnte so aussehen:
      start C:\WINDOWS\system32\Magnify.exe
    • Führe diese Datei aus, um die Lupe zu starten.

Praktische Beispiele

Hier ist ein praktisches Beispiel, wie du die Bildschirmlupe mit dem CommandButton in einer Userform steuern kannst:

Private Sub CommandButton1_Click()
    Dim wsh As Object
    Set wsh = VBA.CreateObject("WScript.Shell")
    wsh.Run "C:\WINDOWS\system32\Magnify.exe"
End Sub

Wenn du den Button klickst, wird die Windows Bildschirmlupe geöffnet. Dies ist hilfreich für Benutzer, die eine Vergrößerung des Bildschirms benötigen.


Tipps für Profis

  • Wenn du die Bildschirmlupe häufig nutzt, kannst du eine Verknüpfung auf deinem Desktop erstellen, um sie schneller zu öffnen.
  • Überlege, ob du den Code in eine Moduldatei verschieben möchtest, um die Wiederverwendbarkeit zu erhöhen.
  • Nutze Error-Handling in deinem VBA-Code, um mögliche Fehler beim Ausführen des Codes abzufangen und zu behandeln.

FAQ: Häufige Fragen

1. Frage
Kann ich die Bildschirmlupe auch mit einer anderen Taste steuern?
Antwort
Ja, du kannst die Tastenkombination anpassen, indem du den entsprechenden Code in VBA änderst. Beachte jedoch, dass die Windows-Taste nicht leicht simuliert werden kann.

2. Frage
Funktioniert dieser Code unter allen Windows-Versionen?
Antwort
Der Code zur Steuerung der Bildschirmlupe funktioniert in der Regel unter Windows 10 und Windows 11. Bei älteren Versionen kann es Unterschiede geben.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige