Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makros über Funktionstasten aufrufen?

Forumthread: Makros über Funktionstasten aufrufen?

Makros über Funktionstasten aufrufen?
28.11.2003 07:07:55
Ralf-Eckhard
Hallo.

Gibt es eine Möglichkeit, um Makros nicht nur über "Strg + Buchstabe" aufzurufen sondern auch über Funktionstasten?

Danke im vorraus,
Ralf-Eckhard
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makros über Funktionstasten aufrufen?
28.11.2003 08:07:11
Matthias G
Hallo Ralf,
folgender Code ins Codemodul "DieseArbeitsmappe":

Private Sub Workbook_Activate()
'z.B. Funktionstaste umleiten auf Makro "Info"
Application.OnKey "{F1}", "Info"
End Sub


Private Sub Workbook_Deactivate()
'Funktionstaste rücksetzen
Application.OnKey "{F1}"
End Sub

Wichtig ist die Rücksetzung auf Standard, wenn deine Mappe deaktiviert wird, denn andere Tabellen kommen mit Deinem Makro wahrscheinlich nicht klar...

Weiteres unter "OnKey" in der Excel-VBA-Hilfe!

Gruß,
Matthias
Anzeige
AW: Makros über Funktionstasten aufrufen?
28.11.2003 08:22:45
Nabriss
Hallo Ralf,Hallo Matthias
So funktioniert:


Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then ActiveSheet.TextBox2.Activate '"ENTER"
If KeyCode = 35 Then Call einfügen                 '"ENDE"
If KeyCode = vbKeyF1 Then Call START               '"F1"
End Sub

Gruß
Nabriss
Anzeige
AW: Makros über Funktionstasten aufrufen?
28.11.2003 08:28:53
Matthias G
Hallo Nabriss,
dein Code ist aber sehr speziell. Er funktioniert nur innerhalb einer Textbox eines Userforms.
Dies konnte ich der Fragestellung aber nicht entnehmen.
Gruß,
Matthias
AW: Makros über Funktionstasten aufrufen?
28.11.2003 08:39:55
Ralf-Eckhard
Hallo "Nabriss"

Vielen, vielen Dank - damit erreiche ich eine unheimliche Arbeitserleichterung.

Gruss,
Ralf
Anzeige
AW: Danke für die Rückmeldung, falls...
28.11.2003 08:43:45
Matthias G
...Du dich tatsächlich auf meine Antwort bezogen hast.
Ich heiße zwar nicht Nabriss, fühlte mich aber trotzdem angesprochen.

Viele Grüße,
Matthias
AW: Danke für die Rückmeldung, falls...
28.11.2003 08:57:29
Nabriss
Hallo Ralf
Ich wollte nur helfen!
Es tut mir leid das ich Mattias belästigt, war nicht mit absicht.
Mein Code funktioniert sehr gut und mit hilfe dieses code habe ich viel schwere aufgaben erledigt. weil in jeden textbox kann ich für jede taste ein neu Makro führen.
Gruß
Nabriss
Anzeige
AW: Danke für die Rückmeldung, falls...
28.11.2003 09:04:49
Matthias G
Hallo Nabriss,
Du hast mich überhaupt nicht belästigt, wie kommst Du darauf?
Ich wollte dich (und v.a. Ralf) nur darauf hinweisen, dass der Code nur in einer Textbox funktioniert. Da Ralf den Level "VBA nur mit Recorder" eingetragen hat, meine ich, so ein Hinweis ist angebracht.
Also, nichts für ungut!

Viele Grüße,
Matthias
Anzeige
AW: OK
28.11.2003 09:13:14
Nabriss
OK
AW: Danke für die Rückmeldung, falls...
28.11.2003 12:55:02
Ralf-Eckhard
sorry ihr zwei

hab da wohl etwas durcheinander geworfen

trotzdem nochmal danke für die hilfreiche Hilfe
AW: Danke für die Rückmeldung, falls...
28.11.2003 12:55:14
Ralf-Eckhard
sorry ihr zwei

hab da wohl etwas durcheinander geworfen

trotzdem nochmal danke für die hilfreiche Hilfe
Anzeige
;
Anzeige

Infobox / Tutorial

Makros über Funktionstasten in Excel aufrufen


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  2. Wähle das Codemodul: Klicke im Projektfenster auf „DieseArbeitsmappe“.

  3. Füge den Code ein: Kopiere den folgenden VBA-Code in das Modul:

    Private Sub Workbook_Activate()
       ' Funktionstaste umleiten auf Makro "Info"
       Application.OnKey "{F1}", "Info"
    End Sub
    
    Private Sub Workbook_Deactivate()
       ' Funktionstaste rücksetzen
       Application.OnKey "{F1}"
    End Sub
  4. Makro erstellen: Erstelle ein Makro mit dem Namen „Info“, das ausgeführt werden soll, wenn die Funktionstaste F1 gedrückt wird.

  5. Speichern und Testen: Speichere deine Änderungen und teste die Funktionstaste, indem du die Arbeitsmappe aktivierst.


Häufige Fehler und Lösungen

  • Funktionstaste funktioniert nicht: Stelle sicher, dass deine Arbeitsmappe aktiviert ist und der Code im richtigen Modul eingefügt wurde.

  • Makro nicht gefunden: Überprüfe, ob das Makro den korrekten Namen hat und ob es im gleichen Modul wie der OnKey-Befehl definiert ist.

  • Rücksetzung der Funktionstaste: Wenn du die Arbeitsmappe verlässt, wird die Funktionstaste zurückgesetzt. Achte darauf, den Deactivate-Code nicht zu entfernen.


Alternative Methoden

Eine andere Möglichkeit, Makros über Funktionstasten in Excel aufzurufen, ist die Verwendung von UserForms. Hier kannst du den KeyDown-Ereignis nutzen:

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = vbKeyF1 Then Call START ' F1
End Sub

Diese Methode ist speziell für die Verwendung innerhalb einer Textbox gedacht.


Praktische Beispiele

  • Beispiel 1: Um die Funktionstaste F2 für ein Makro „DatenAktualisieren“ zu verwenden, ändere den OnKey-Befehl entsprechend:

    Application.OnKey "{F2}", "DatenAktualisieren"
  • Beispiel 2: Du kannst mehrere Funktionstasten für verschiedene Makros zuweisen, indem du mehrere OnKey-Befehle in deinem Code verwendest.


Tipps für Profis

  • Benutzerdefinierte Tastenbelegung: Nutze die Möglichkeit, Funktionstasten individuell für verschiedene Arbeitsmappen zuzuweisen.

  • Einfache Fehlersuche: Verwende Debug.Print innerhalb deines Makros, um zu überprüfen, ob das Makro tatsächlich aufgerufen wird.

  • Dokumentation: Halte deinen Code gut dokumentiert, insbesondere wenn du mehrere Funktionstasten verwendest.


FAQ: Häufige Fragen

1. Kann ich auch andere Tasten als Funktionstasten verwenden?
Ja, du kannst nahezu jede Taste über den Application.OnKey Befehl umleiten.

2. Ist das nur in bestimmten Excel-Versionen möglich?
Diese Funktionalität ist in den meisten modernen Excel-Versionen verfügbar, die VBA unterstützen.

3. Was passiert, wenn ich eine Funktionstaste standardmäßig benötige?
Du kannst die Funktionstaste jederzeit auf ihre Standardfunktion zurücksetzen, indem du Application.OnKey ohne Parameter verwendest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige