Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
488to492
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
488to492
488to492
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Reaktion auf Tastaturanschläge

Reaktion auf Tastaturanschläge
21.09.2004 14:30:25
Hauser
Hallo zusammen,
ich möchte, daß innerhalb einer For-Next-Schleife ein Makro gestartet wird, wenn der User eine bestimmte Taste drückt. Dachte erst ich würde das mit der onkey-Anweisung hinkriegen. Das geht aber nicht.
Eigentlich brauch ich die Schleife auch nicht unbedingt. Das Makro soll nur ne bestimmte Zeit warten und falls der User in der Zeit ne Taste drückt, ein Makro starten, falls er nix drückt, mit dem Makro fortfahren.
Hat jemand ne andere Idee?
Danke im voraus

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Reaktion auf Tastaturanschläge
21.09.2004 17:40:19
Nepumuk
Hallo Hauser, (zufällig Kasper mit Nachnamen?)
das geht so nicht. Während der Makroausführung sind eigentlich alle Tasten außer Esc und Strg+Break gesperrt. Du müsstest also einige DoEvents & eine Tastaturüberwachung in das Makro integrieren. Das verringert aber die Geschwindigkeit deines Codes beträchtlich.
Gruß
Nepumuk
AW: Reaktion auf Tastaturanschläge
Hauser
nicht mit Nachname Kasper :-)
also wenn das ganze ein bischen langsamer läuft wär das nicht wirklich tragisch. Schließlich will ich dem User ja auch ein bischen Zeit geben ne Taste zu drücken. Darum wollte ich anfangs ja das ganze in ner Schleife abfragen.
Wenn du mir erklären könntest wie ich ne Tastaturüberwachung einbaue wär das prima
Danke
Anzeige
AW: Reaktion auf Tastaturanschläge
21.09.2004 21:13:13
Nepumuk
Hallo Hauser,
um welche Tasten geht es denn?
Gruß
Nepumuk
AW: Reaktion auf Tastaturanschläge
Hauser
Also da bin ich ziemlich offen,
am besten wären die Pfeiltaste links und rechts (die neben dem Ziffernblock) und die Spacetaste.
Hoffe du kannst mir da helfen
AW: Reaktion auf Tastaturanschläge
22.09.2004 16:33:52
Nepumuk
Hallo Hauser,
mal ein Beispielcode:


Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As LongAs Integer
Private Declare Function GetInputState Lib "user32" () As Long
Private Enum Keys
    VK_SPACE = &H20
    VK_LEFT = &H25
    VK_RIGHT = &H27
End Enum
Public Sub test()
    Dim intIndex As Integer
    For intIndex = 1 To 100
        If GetInputState Then DoEvents: If GetAsyncKeyState(VK_SPACE) Or GetAsyncKeyState(VK_LEFT) Or GetAsyncKeyState(VK_RIGHT) Then MsgBox "Hallo"
        Sleep 10
    Next
End Sub


Die Sleep - Funktion ist nur zum testen drin, damit das Makro nicht in Bruchteilen einer Sekunde durgelaufen ist.
Gruß
Nepumuk
Anzeige
Vielen Dank, läuft einwandfrei!!
Hauser

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige