Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
980to984
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
980to984
980to984
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zusätzliches Tastaturkürzel

Zusätzliches Tastaturkürzel
01.06.2008 12:50:00
Mathias
Hallo,
für den Befehl Datei / Speichern würde ich gern in meinem VBA-Projekt ein zusätzliches Tastaturkürzel (z.B. F2) anlegen.
Die Onkey-Methode kenne ich schon, aber ich bekomme es irgendwie nicht hin, dass Ereignisse wie z.B. Worksheet_BeforeSave dabei mit ausgeführt werden.
Hat jemand ´sowas schonmal gemacht?
Viele Grüße
Mathias

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zusätzliches Tastaturkürzel
01.06.2008 13:03:04
Tobias
Hallo Mathias,
ich habe den Code etwas umgestellt und so gelöst. Ich hoffe das hilft Dir.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnKey ("{F2}")
End Sub



Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Call BeforeSave
End Sub


Sub Workbook_open()
Call Application.OnKey("{F2}", "DieseArbeitsmappe.BeforeSave")
End Sub


Sub BeforeSave()
MsgBox "BeforeSave"
End Sub


Schönen Gruß, Tobi
www.tobiasschmid.de

Anzeige
AW: Zusätzliches Tastaturkürzel
02.06.2008 07:52:03
Mathias
Hallo Tobi,
vielen Dank für den Quellcode.
Wenn ich das richtig sehe, müßte der Speichervorgang dann auch in Sub BeforeSave() ausgeführt werden, oder?
Viele Grüße
Mathias

AW: Zusätzliches Tastaturkürzel
02.06.2008 09:53:31
Tobias
Mist. Ja, aber dann speicherst Du (wenn Du den "normalen" Speichervorgang wählst) zweimal hintereinander die Datei. Das hatte ich übersehen.
Man kann den Code aber noch etwas anpassen:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnKey ("{F2}")
End Sub



Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Call BeforeSave(True)
End Sub


Sub Workbook_open()
Call Application.OnKey("{F2}", "DieseArbeitsmappe.BeforeSave")
End Sub


Sub BeforeSave(Optional FileIsSaved as boolean = False)
MsgBox "BeforeSave"
If not FileIsSaved then
'Datei speichern
End If
End Sub


Die Funktion BeforeSave bekommt einen Optionalen Parameter mit Falsch als Standardwert.
Im übrigen Frage ich mich gerade, ob Du die Prozedur Workbook_BeforeSave überhaupt benötigst. Falls Du bei Drücken der F2-Taste NUR speichern möchtest, kannst Du die Workbook_BeforeSave auch weglassen.
Gruß, Tobi
www.tobiasschmid.de

Anzeige
AW: Zusätzliches Tastaturkürzel
07.06.2008 18:30:48
Mathias
Hallo Tobi,
danke für den ausführlichen Tipp. Das hätte ich soschnell nicht hinbekommen.
Läuft wunderbar! :-)
Viele Grüße
Mathias

300 Forumthreads zu ähnlichen Themen


Hallo Hans,
wenn ich die URLs richtig interpretiere, haben wir im Forum soeben die Zahl von 1 Million Beiträgen überschritten.
Herzlichen Glückwunsch zu dem Erfolg Deines "Babys"!
Gruß
Martin
Anzeige

Hallo zusammen!
Ich habe da als blutiger Anfänger in VBA zwei Fragen:
1.) Wie kann ich in meiner Tabelle in jeder zweiten Spalte 4 leere Spalten einfügen lassen?
2.) Dann möchte ich unter den Inhalt der ersten fünf Spalten (A-E) den Inhalt der zweiten 5 Spalten (F-J) usw. In der grö...

Guten Morgen!
Ich hätte folgendes Problem: Ich erhalte automatisiert Exceltabellen, bei denen nicht alle Zellen einer Zeile gefüllt werden, wenn dort der Inhalt einer darüberliegenden Zeile stehen sollte. Zur Weiterverarbeitung muss ich aber diese Zellen mit den dazugehörigen Werten füllen....
Anzeige

Hallo zusammen,
ich habe eine lange Liste, in der in einer Spalte Daten stehen, wo ab und zu vorangehende Nullen nötig sind (mal eine - mal 2...etc.) - und manchmal auch keine.
Wie kann ich diese Zellen formatieren, das die vorangehenden "Nullen" nicht automatisch weggelassen werden?

Hallo Excel-Profis
ich habe folgenden Code in ein Makro eingebaut:
'Drucken mit Vorschau
Application.ActivePrinter = "\\dataserv\HP LaserJet 5L AV auf Ne05:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Preview:=True, Collate:= _
True
Hier wird der Standard-Drucker an...

Hallo,
Ich brauche dringend Eure Hilfe. Unter https://www.herber.de/bbs/user/54533.xls findet Ihr eine Mappe, in welcher in Spalte A
1 für "Kaufen"
0 für " "
-1 für "Verkaufen"
steht. IN SPALTE B SIND BISHER NUR MANUELL ERSTELLTE BEISPIELEINTRÄGE ENTHALTEN, DAMIT ERSICHTLIC...

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige