Sie können VBA-Makros (Visual Basic for Applications) erstellen und ausführen, um Routineaufgaben zu vereinfachen und zu automatisieren. Mit Reflection können Sie folgende Aufgaben ausführen:
Neben den in Reflection erstellten VBA-Makros können Sie auch die meisten Makros ausführen, die mit älteren Versionen von Reflection- und EXTRA!- Produkten erstellt wurden. Auch die meisten Makros, die mit Micro Focus Rumba-, IBM Personal Communications-, OpenText HostExplorer- und Brandon Systems\Jolly Giant QWS3270-Produkten erstellt wurden, können ausgeführt werden. Beachten Sie jedoch, dass nur in vertrauenswürdigen Verzeichnissen gespeicherte Makros ausgeführt werden können.
Im Dialogfeld Aktion auswählen stehen mehrere makrobezogene Aktionen zur Auswahl, z. B. zum Ausführen eines Reflection-Arbeitsbereich-Makros.
Sie können Makros auch ausführen, indem Sie die entsprechende Aktion einem Steuerelement zuordnen. Weitere Informationen finden Sie unter Hinzufügen einer Schaltfläche zum Ausführen eines Makros.
So führen Sie ein Makro aus
Die Schritte hängen von Ihrem verwendeten Benutzeroberflächenmodus ab.
Benutzeroberflächenmodus |
Vorgehensweise |
---|---|
Reflection-Multifunktionsleiste |
Klicken Sie in der Registerkarte Makros in der Gruppe Erweitert auf Makro ausführen. |
Reflection Browser |
Klicken Sie im Menü Reflection auf Extras, Makro und dann auf Makro ausführen. |
TouchUx |
Berühren Sie das Werkzeugsymbol, und wählen Sie dann unter Makro die Option Dialogfeld zum Ausführen von Makros anzeigen aus. |
Wählen Sie im Dialogfeld Makro ausführen den Makrotyp und danach das Makro aus, das Sie ausführen möchten.
HINWEIS:Optionen zum Ausführen von Legacymakros sind nur verfügbar, wenn die entsprechenden Kompatibilitätsfunktionen installiert wurden. Wenn Sie in älteren Versionen von Reflection und EXTRA! erstellte Makros aus externen Dateien ausführen möchten, müssen Sie im Dialogfeld API- und Makrosicherheit einrichten angeben, welcher Typ von Legacymakros ausgeführt werden soll.
Reflection-Arbeitsbereich-Makro |
Zeigt Makros im aktiven Sitzungsdokument an. Wählen Sie diese Option, wenn Sie Makros ausführen möchten, die in Reflection- oder 2007 (SP1)-Dokumenten erstellt wurden. Wenn Sie ein Makro im allgemeinen Projekt und anderen Dokumenten ausführen möchten, wählen Sie im Menü Makros in die Option <Alle Standardprojekte> aus: |
|
Reflection-Legacymakros |
Wählen Sie diese Option, um Legacymakros im aktiven Dokument auszuführen. Zu diesen Makros gehören Legacyeinstellungsdateien (.rsf, .r2w oder .r4w) und in Reflection Sitzungsdokumente (.rd3x, .rd5x, .rdox), die aus Einstellungsdateien konvertiert wurden. |
|
Reflection-Legacymakro in anderer Datei |
Wählen Sie diese Option, um ein Makro in einer SharedMacro-Datei (.rma) oder in einer Einstellungsdatei (.rsf, .r2w oder .r4w) auszuführen. |
|
RB-Legacymakro |
Wählen Sie diese Option, um ein Reflection Basic-Makro (.rbs) auszuführen. |
|
RCL-Legacyskript |
Wählen Sie diese Option, um ein RCL-Legacyskript auszuführen. Diese Option ist nur in VT-Sitzungsdokumenten verfügbar. |
|
Legacy-EXTRA! Makro |
Wählen Sie diese Option, um eine EXTRA!-Makrodatei (.ebm) auszuführen. |
|
Rumba-Makro |
Wählen Sie diese Option, um eine Micro Focus Rumba-Makrodatei (.rmc) auszuführen. |
|
QWS-Makro |
Wählen Sie diese Option, um eine Brandon Systems\Jolly Giant QWS3270-Makrodatei (.jgs) auszuführen. |
|
IBM Personal Communications-Makro |
Wählen Sie diese Option, um eine IBM Personal Communications-Makrodatei (.mac) auszuführen. |
Wenn Sie kein Arbeitsbereich-Makro finden, wählen Sie im Fenster "Einstellungen" die Option VBA-Verweise einrichten aus, um das Dialogfeld "VBA-Verweis hinzufügen" zu öffnen. Überprüfen Sie dann die Liste auf fehlende Verweise (angegeben durch die Schaltfläche ). Nachdem Sie das Problem behoben haben (normalerweise eine fehlende Datei oder ein getrenntes Netzlaufwerk), schließen und öffnen Sie dann die Sitzung erneut.
Erstellen Sie Makros nach Möglichkeit in Modulen. Dies unterstützt die Integrität und Stabilität Ihres Programms. Eine Ausnahme bilden lediglich Ereignisprozeduren, die Reflection-Objekten direkt hinzugefügt werden.
So erstellen Sie ein Makro im Visual Basic-Editor
Öffnen Sie in Reflection ein Sitzungsdokument.
Die Schritte hängen von Ihrem verwendeten Benutzeroberflächenmodus ab.
Benutzeroberflächenmodus |
Vorgehensweise |
---|---|
Reflection-Multifunktionsleiste |
Klicken Sie auf der Registerkarte Makros auf Visual Basic. |
Reflection Browser |
Klicken Sie im Menü Reflection auf Extras, Makro und dann auf Visual Basic. |
TouchUx |
Berühren Sie das Werkzeugsymbol, und wählen Sie dann unter Makro die Option Visual Basic aus. |
Das Sitzungsdokument wird im Projekt-Explorer als Projekt angezeigt, zum Beispiel als "Project (Meine Sitzung.rd3x).".
Wählen Sie im Projekt-Explorer das Projekt aus, in dem Sie das Makro speichern möchten, und wählen Sie dann Einfügen > Modul, um ein neues Modul zu erstellen.
Doppelklicken Sie auf das erstellte Modul.
Das Fenster Code wird geöffnet.
Wählen Sie Einfügen > Prozedur, geben Sie im Feld Name einen Namen ein, und klicken Sie dann auf OK.
Der Name muss den Visual Basic-Benennungskonventionen für Makros entsprechen. Weitere Informationen hierzu finden Sie in Benennen von Makros.
Geben Sie den Code für Ihr Makro zwischen den Anweisungen Sub (oder Public Sub) und End Sub ein.
Zu den Visual Basic-Befehlen steht Ihnen eine kontextsensitive Hilfe zur Verfügung. Positionieren Sie die Einfügemarke in einem Befehl, und drücken Sie F1.
Mithilfe von VBA-Makros können Sie in der Interaktion mit Hostanwendungen beispielsweise folgende Schritte automatisieren:
Senden von Daten an oder Eingeben von Text in eine Hostanwendung
Ausschneiden bzw. Kopieren und Einfügen von Text oder Daten aus einer Hostanwendung in eine andere
Wechseln zwischen den Registerkarten für verschiedene Hostanwendungen
Auswählen von Text mit der Maus oder Klicken der Maustaste zum Bewegen des Cursors (Mausklicks werden als Cursorpositionen aufgezeichnet.)
Folgende Vorgänge können nicht aufgezeichnet werden:
Interaktionen zwischen Reflection-Einstellungen und Produktivitätsfunktionen (wie "Rechtschreibprüfung", "Automatisches Erweitern" und "Automatisches Vervollständigen")
Aufbauen oder Trennen einer Hostverbindung
Interaktion mit Webanwendungen
Ausschneiden oder Einfügen von Text oder Daten zwischen einem Host und einer externen Anwendung (z. B. Windows Editor)
So zeichnen Sie ein Makro auf
Die Schritte hängen von Ihrem verwendeten Benutzeroberflächenmodus ab.
Benutzeroberflächenmodus |
Vorgehensweise |
---|---|
Multifunktionsleiste |
Klicken Sie in der Registerkarte Makros in der Gruppe Erweitert auf VBA-Makro aufzeichnen. |
Reflection Browser |
Klicken Sie im Menü Reflection auf Extras, Makro und dann auf VBA-Makro aufzeichnen. |
TouchUx |
Berühren Sie das Werkzeugsymbol, und wählen Sie dann unter Makro die Option VBA-Makro aufzeichnen aus. |
Führen Sie die Aufgabe(n) aus, die Sie automatisieren möchten.
(Optional) Wenn Sie die Aufzeichnung unterbrechen möchten, um eine andere Aufgabe auszuführen, klicken Sie auf Aufzeichnung anhalten. Klicken Sie erneut auf Aufzeichnung anhalten, wenn Sie die Aufzeichnung fortsetzen möchten.
Klicken Sie nach Abschluss der Makroaufzeichnung auf Aufzeichnung beenden.
Das Dialogfeld Aufzeichnung abgeschlossen wird angezeigt.
Geben Sie einen Namen für das Makro ein, legen Sie einen Speicherort fest, und klicken Sie dann auf OK.
HINWEIS:Aufgezeichnete Makros können im Visual Basic-Editor bearbeitet werden. Weitere Informationen hierzu finden Sie unter Bearbeiten eines Makros.
Reflection-Makros können mit dem Visual Basic-Editor bearbeitet werden.
So bearbeiten Sie ein Makro
Die Schritte hängen von Ihrem verwendeten Benutzeroberflächenmodus ab.
Benutzeroberflächenmodus |
Vorgehensweise |
---|---|
Reflection-Multifunktionsleiste |
Klicken Sie auf der Registerkarte Makros auf Visual Basic. |
Reflection Browser |
Klicken Sie im Menü Reflection auf Extras, Makro und dann auf Visual Basic. |
TouchUx |
Berühren Sie das Werkzeugsymbol, und wählen Sie dann unter Makro die Option Visual Basic aus. |
Das Dialogfeld Makros wird angezeigt.
Wählen Sie im Feld Makroname den Namen des zu bearbeitenden Makros aus, und klicken Sie auf Bearbeiten.
Geben Sie die Makrobefehle im Visual Basic-Editor ein, und nehmen Sie die gewünschten Änderungen vor.
Wählen Sie im Menü Datei den Befehl Speichern aus.
Sie können ein VBA-Makro (Visual Basic for Applications) einrichten, das beim Starten des Reflection-Arbeitsbereichs und nicht beim Öffnen einer Sitzung und der Verbindungsherstellung zum Host ausgeführt wird.
Dies ermöglicht Ihnen, Informationen über die Verbindungsart der Benutzer zu sammeln, die Sie anschließend zum Konfigurieren der Sitzungseinstellungen verwenden können.
Sie können z. B. ein Startmakro erstellen, mit dem folgende Aufgaben ausgeführt werden:
Anzeigen eines VBA-UserForm-Dialogfelds, um Informationen vom Benutzer zu sammeln, bevor die Verbindung zum Host hergestellt wird
Lesen einer .ini-Datei
Prüfen der Host- oder Routerverfügbarkeit
Konfigurieren der Reflection-Einstellungen
VORSICHT:Sie können nur Makros im allgemeinen Projekt konfigurieren, die beim Starten des Arbeitsbereichs ausgeführt werden. Konfigurieren Sie nicht die Aktion "Reflection-Arbeitsbereich-Makro ausführen", um ein Makro in einem Sitzungsdokument auszuführen (rd0x, rd3x, rd5x). Andernfalls kann Reflection nicht ordnungsgemäß gestartet werden.
So richten Sie ein Startmakro ein
Die Schritte hängen von Ihrem verwendeten Benutzeroberflächenmodus ab.
Benutzeroberflächenmodus |
Vorgehensweise |
---|---|
Multifunktionsleiste |
Wählen Sie im Menü "Datei" oder über die Reflection-Schaltfläche (bei Verwendung der Office 2007-Darstellung) die Option Reflection-Arbeitsbereichseinstellungen aus. |
Reflection Browser |
Wählen Sie im Menü Reflection die Option Einstellungen und dann Reflection-Arbeitsbereicheinstellungen aus. |
TouchUx |
Berühren Sie das Zahnradsymbol, und wählen Sie Reflection-Arbeitsbereicheinstellungen aus. |
Klicken Sie unter Arbeitsbereicheinstellungen auf Arbeitsbereicheinstellungen konfigurieren.
Wählen Sie unter Arbeitsbereich und Dokumente in der Liste Beim Starten des Arbeitsbereichs die Option Startaktion ausführen aus.
Klicken Sie auf Aktion auswählen.
Wählen Sie unter Aktion die Option Reflection-Arbeitsbereich-Makro ausführen aus.
Wählen Sie unter Aktionsparameter die Option Makro auswählen aus.
Wählen Sie im Feld Makro auswählen das Makro aus, das beim Starten von Reflection ausgeführt werden soll.
Wenn Sie ein Makro für Ihre Sitzung bzw. Ihren Arbeitsbereich erstellt haben, können Sie die Sitzung zum Ausführen eines Verbindungsmakros einrichten.
So richten Sie ein Verbindungsmakro ein
Die Schritte hängen von Ihrem verwendeten Benutzeroberflächenmodus ab.
Benutzeroberflächenmodus |
Vorgehensweise |
Multifunktionsleiste oder Reflection-Browser |
Während in Reflection eine Sitzung geöffnet ist, klicken Sie auf der Schnellzugriffsleiste auf . |
TouchUx |
Berühren Sie das Zahnradsymbol, und wählen Sie Dokumenteinstellungen aus. |
Führen Sie im Dialogfeld Einstellungen eine der folgenden Aktionen aus:
(VT) Klicken Sie auf Verbindungseinstellungen konfigurieren.
(3270 oder 5250) Klicken Sie auf Erweiterte Verbindungseinstellungen konfigurieren.
Wählen Sie unter Verbindungsaktion aus, ob das Makro vor oder nach der Erstverbindung ausgeführt werden soll.
Klicken Sie auf Aktion auswählen, und wählen Sie das auszuführende Makro aus.
Beachten Sie folgende Regeln bei der Benennung von Visual Basic-Makros (einschließlich Prozeduren, Konstanten, Variablen und Argumente):
Das erste Zeichen muss ein Buchstabe sein. (Bei Namen muss die Groß-/Kleinschreibung nicht berücksichtigt werden, Großbuchstaben werden jedoch beibehalten.)
Verwenden Sie ausschließlich alphanumerische Zeichen und den Unterstrich ( _ ). Leerzeichen und andere Symbole sind nicht zulässig.
Verwenden Sie höchstens 255 Zeichen.
Vermeiden Sie Benennungen, die Visual Basic- oder Reflection-Befehlen entsprechen. Wenn Sie jedoch tatsächlich einen Makronamen verwenden möchten, der mit einem Befehl übereinstimmt, müssen Sie den Befehl bei Bedarf vollständig qualifiziert angeben. (Geben Sie dazu vor dem Befehlsnamen den Namen der zugehörigen Typbibliothek ein. Wenn ein Makro beispielsweise den Namen "Beep" trägt, kann die Visual Basic-Anweisung Beep nur durch Eingabe von "VBA.Beep" aktiviert werden.
Die Makronamen innerhalb eines Moduls müssen eindeutig sein. Innerhalb eines Codemoduls kann jeweils nur ein Makro denselben Namen tragen. Es können nur dann zwei Makros mit demselben Namen vorhanden sein, wenn diese sich in unterschiedlichen Codemodulen befinden. Beispiel: Obwohl zwei Makros mit dem Namen "StartUp" nicht im selben Codemodul zulässig sind, sind zwei Makros mit dem Namen "StartUp" zulässig, sofern sie in unterschiedlichen Codemodulen vorhanden sind. Um ein Makro mit einem doppelt verwendeten Namen in einem anderen Codemodul aufzurufen, muss der Makroname vollständig angegeben werden. (Mit "Modul1.StartUp" wird beispielsweise das Makro "StartUp" in "Modul1" aufgerufen.)