![]() |
||
![]() |
Makro mit Doppelfunktion unter Office 97
Um in Office 97 zügiges Arbeiten mit Ihren selbstgeschriebenen Makros zu ermöglichen, legen Sie normalerweise für jedes einzelne Makro einen eigenen Button in der Menüleiste oder einer speziellen Makro-Symbolleiste an. So können Sie bequem mit einem Mausklick das Makro starten, das die im Programmcode definierte Aufgabe ausführt. Private Declare Function GetAsyncKeyState Lib "User32" (ByVal intKey As Integer) As IntegerIm eigentlichen Code-Abschnitt wartet eine kleine Zeitschleife den zusätzlichen Tastendruck ab, bevor der API-Funktionsaufruf den Zustand der entsprechenden Taste ermittelt. Die Funktion GetAsyncKeyState liefert einen Integer-Wert zurück, wovon allerdings nur das erste Bit relevant ist. Deshalb läßt es sich mit dem AND-Operator isolieren und mit der CBOOL-Funktion in einen booleschen Wert konvertieren. Für die Tasten [Shift], [Ctrl] und [Esc] stellt VBA globale Konstanten bereit: vbKeyShift, vbKeyControl und vbKey- Escape. Der abgebildete Makro-Code demonstriert eine praktische Anwendung für die Vergrößerung (Aufruf ohne [Shift]) und Verkleinerung (Aufruf mit [Shift]) der Zoom-Ansicht. Zoom-Makro mit DoppelfunktionWIN-CODE: ZOOM |
![]() |