online 1
gast (50)

/ Forum / Datenbanken

DatenbankenDatenbanken

Fragevon Robsenponte vom 11.01.2019, 15:23 Options

Access: Tastenkombinationen in VBA erstellen

Hallo,
Ich habe einen Button der mit einem Makro belegt ist.
Button: "Drucken"
Makro: Drucken-------DruckenFormular1

Ich möchte in VBA einen Code schreiben der dieses Makro ausführt wenn ich die Tastenkombination Strg + D drücke.
Dafür bin ich auf die Eigenschaften des Formulars, auf "Bei Taste ....." und habe folgende Code geschrieben:

Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyCtrl and vbKeyAscii = vbKeyD Then
DoCmd.RunMacro "Drucken.DruckenFormular1"
End If
End Sub

leider passsierte gar nichts als ich strg + d drückte.
Ich möchte noch mehrere Tastenkombinationen belegen und weiß nicht was die Tasten in VBA bedeuten (z.B. Enter = vbKeyReturn...) könnte mir jemand sagen wo ich eine Auflistung der Tasten bekomme??
Vielen Dank im Vorraus


Antwort schreiben

Antwort 1 von RalfH vom 12.01.2019, 10:39 Options

Hallo Robsenponte,

Das mit der Kombination weiss ich leider auch nicht,
wenn Dir aber die Taste D reicht, dann sollte das so gehen.

Bei Eigenschaften des Button: "Drucken", gehst Du auf
Beschriftung und setzt vor dem Wort "Drucken" ein kaufmännisches & also : &Drucken

Gruß Ralf

Antwort 2 von Robsenponte vom 15.01.2019, 08:06 Options

Vielen Dank Ralf,
Ich habe mittlerweile etwas anderes herausgefunden.
Mit diesem Code klappt es:
´Bei Str + D Drucken´

Private Sub Text0_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyD And Shift = 2 Then
DoCmd.RunMacro "Drucken.DruckenQuetschEinzeln"
KeyCode = 0
Shift = 0
End If
End Sub

Mit diesem Code wird bei Strg + D das Makro "Drucken.DruckenQuetschEinzeln" ausgeführt. Das einzige Problem ist, dass man dieses Makro für jedes Steuerelement eintippen muss, da man ja in Access ein Formular nicht dauermarkieren kann.

Was noch nicht klappt ist, wenn man Str + D + A benutzen will. Ich habe das Makro so verändert:
Private Sub Text0_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyD And vbKeyA [/b]And Shift = 2 Then
DoCmd.RunMacro "Drucken.DruckenQuetschEinzeln"
KeyCode = 0
Shift = 0
End If
End Sub

Das Makro wird aber bei Str + D ausgefüht.

Falls Du oder jemand anderes für dieses Problem eine Lösung findet lasst es mich bitte Wissen.

Mit freundlichen Grüßen

Robsenponte

Antwort 3 von RalfH vom 15.01.2019, 10:38 Options

Guten Morgen,

Wofür brauchst Du denn die 3er Kombination ?

Was wird bei dem Makro gedruckt, der Datensatz, ein Teil des Datensatzes ?

GRuß Ralf

Antwort 4 von Robsenponte vom 15.01.2019, 10:58 Options

Das Erste makro das gestartet werden soll, druckt einen einzelnen Datensatz (Strg + D), das nächste Makro mit Strg + d+ a soll alle Datensätze drucken.
Dafür habe ich in Access das Makro "Drucken.DruckenAlle" aber leider klappt das mit diesem Code nicht:
Private Sub Text0_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyD And vbKeyA And Shift = 2 Then
DoCmd.RunMacro "Drucken.DruckenQuetschEinzeln"
KeyCode = 0
Shift = 0
End If
End Sub

Ich könnte Strg + z.B. F verwenden aber ich wollte die Kombinationen logisch gestalten (Strg + D) = Drucken Einzeln und (Strg + D + A) = Drucken alles. Das A sol für alles stehen

Antwort 5 von RalfH vom 15.01.2019, 11:36 Options

Schonmal den Befehlschaltflächen-Assistenten zu Hilfe genommen ?

Antwort 6 von Robsenponte vom 15.01.2019, 11:49 Options

Ja, für die Datensatznavigation fürs Drucken..., aber wie soll mir der Assi bei den Tastenkombinationen helfen?
Ich habe einen Button der die Makros ausführt, das ist ja nicht sonderlich schwer. Ich möchte aber sozusagen den Button (oder dessen Makro) per Tastenkombination starten um das Programm schöner zu gestalten.

Antwort 7 von RalfH vom 17.01.2019, 10:30 Options

Hallo Robsenponte,

Da kann ich Dir nicht weiterhelfen, allerdings denke ich mir, das durch die erste Kombination ja schon ein Ereignis Eintritt, und somit die 3 Kombination garnicht so wie Du das möchtest funktioniert.
Es sei denn, man drückt die Tasten in einer anderen Reihen folge und das wäre nicht mehr so komfortabel.
Gruß Ralf

Antwort 8 von Robsenponte vom 17.01.2019, 10:47 Options

Danke Ralf

Ich lass es so wies ist

Antwort 9 von Robsenponte vom 18.01.2019, 10:39 Options

Hallo Forum User,

Falls doch jemand eine Lösung des Problemes kennt, würde es mich trotzdem interresieren und ich fraue mich auf jede Antwort!

Mfg

Robsenponte

Ähnliche Themen

Tastenkombinationen zuordnen
Cara  25.07.2007 - 81 Hits - 3 Antworten

aus Access Verknüpfung erstellen
rolandaa  21.11.2007 - 170 Hits - 2 Antworten

Wie schreib ts man mit Access VBA in eine Tabelle hinein
AD2919  11.03.2008 - 182 Hits - 1 Antwort

Tastenkombinationen beim Notebook
VUBLA  06.04.2008 - 77 Hits - 1 Antwort

VBA-Excel
mentosbasi  28.05.2008 - 349 Hits - 3 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026