Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1060to1064
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
Inhaltsverzeichnis

Steuerbuttons zu langsam / Globale Tastenkombis in

Steuerbuttons zu langsam / Globale Tastenkombis in
24.03.2009 14:58:58
Peter
Guten Tag an die Excel-Gemeinde,
hat jemand eine Erklärung für folgende Beobachtung:
Ich möchte von einer UserForm aus die Cursor-Position (den Zellenfocus) im Excelblatt steuern, also nach dem Schema: Knobb_up eine Zeile nach oben springen und Knobb_down eine Zeile nach unten springen
Das geht ja ziemlich einfach etwa mit:

Private Sub btn_up_Click()
Zeile = ActiveCell.Row
Cells(Zeile - 1, 1).Select
End Sub



Private Sub btn_down_Click()
Zeile = ActiveCell.Row
Cells(Zeile + 1, 1).Select
End Sub


und funktioniert auch - nur wenn man die Klicks schneller setzt, belahmen sich die Routinen und setzten einfach aus - sprich man klickt erfolglos auf den Button. Jedes zweite mal wird der Code dann wieder ausgeführt. Es scheint so, als ob das System mit den Buttons nach jedem Klick erstmal eine Verschnaufpause einlegt, um dann wieder weiter zu machen. Somit braucht man ab einer etwas schnelleren Klick-Frequenz immer zwei Klicks für einen Zeilenwechsel, was ziemlich nervt.
Da ich einen Duo-Core XP-Rechner mit 3,5 GB RAM einsetze, sollten die Hardware Voraussetzungen für einen flotten Code-Lauf mit nur 4 Zeilen VBA-Code doch wohl sicher erfüllt sein.
Woran könnte diese Verzögerung denn liegen, oder gibt es eine elegantere Lösung, den Zellen-Fokus von einer Form aus zu steuern?
Und in dem Zusammenhang stellt sich dann auch meine zweite Frage:
Gibt es eine Möglichkeit innerhalb von UserFormen globale Tastaturkommandos zu definieren (die dann ja z.B. meinen Steuercode ausführen könnten)? Ich kenne nur die Möglichkeit über das KeyDown-Ereignis eines jeden Steuerelementes einen Code zu starten, nur muss man dieses ja dann immer für jedes Steuerelement auf der Form abfragen und das wird bei vielen Elementen sehr schnell unübersichtlich.
Es wäre schön, wenn mir dazu jemand behilflich sein könnte.
Bereits im Vorfeld bedanke ich mich für eure Tips.
Beste Grüße von Peter
[Di.24.Mrz.2009 14:56]

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

Betreff
Datum
Anwender
Anzeige
Am KeyDown-Event wird wohl kein Weg...
25.03.2009 02:58:48
Luc:-?
...vorbeiführen, Peter!
Du könntest aber die Auswertung der KeyCodes und von Shift an einer zentralen Stelle vornehmen, indem du jedesmal eine spezielle Subroutine oder evtl besser udFkt aufrufst, die das erledigt.
Gruß Luc :-?
AW: Am KeyDown-Event wird wohl kein Weg...
25.03.2009 09:24:40
Peter
Hallo Luc,
vielen Dank für Deine Antwort - ich dachte schon, dieser Thread geht sang- und klanglos unter in dem regen Forum-Getümmel. Ok, dann bleibt also doch nur das KeyDown-Event für die Fernsteuerung, wie ich es schon vermutet hatte. Oft ist man ja - ohne es zu wissen - mit den gewohnten Methoden viel zu umständlich am Werk und ein kleiner Tip ändert alles von Grund auf. ;)
Wie dem auch sei - nochmals vielen Dank und vielleicht gibt es ja für Teil1 (die langsame Reaktionszeit von Steuerelementen) auch noch einen findigen Checker.
Beste Grüße und bis bald von Peter
[Mi.25.Mrz.2009 09:23]
Anzeige
Pardon, Teil1 noch offen! owT
25.03.2009 03:00:23
Luc:-?
:-?

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige