ich wollte den Befehl CTRL+P aufzeichnen und in ein bestehendes Makro einbauen.
Muss ich das mit SendKeys (keine Ahnung) programmieren?
Danke für einen Bericht
Markus

Sub geht_Manchmal()
Range("a1").Select
SendKeys "^p"
End Sub
Um den Befehl CTRL+P in Excel zu verwenden, kannst Du ihn in ein VBA-Makro einbauen. Hier ist eine einfache Schritt-für-Schritt-Anleitung:
Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
Klicke im Projekt-Explorer mit der rechten Maustaste auf VBAProject (DeineDatei.xlsx) und wähle Einfügen > Modul.
Füge den folgenden Code in das Modul ein:
Sub PrintWithControlP()
Application.Dialogs(xlDialogPrint).Show
End Sub
Schließe den VBA-Editor und kehre zu Excel zurück.
Du kannst das Makro jetzt über ALT + F8 aufrufen und PrintWithControlP auswählen.
Alternativ kannst Du auch SendKeys verwenden, aber beachte, dass dies nicht immer zuverlässig funktioniert:
Sub PrintWithSendKeys()
SendKeys "^p"
End Sub
Fehler: SendKeys funktioniert nicht zuverlässig
Application.Dialogs(xlDialogPrint).Show, um den Druckdialog aufzurufen.Fehler: Druckansicht erscheint nicht
Application.CommandBars.ExecuteMso "FilePrintPreview" gelangst Du zur Druckvorschau.Falls Du CTRL+P nicht über ein Makro auslösen möchtest, kannst Du auch diese Methoden verwenden:
Direktes Drucken über das Menü:
Datei > Drucken, um den Druckdialog manuell zu öffnen.Verwendung von Tastenkombinationen:
Strg + P oder Ctrl + P drücken, um den Druckdialog sofort zu öffnen.Hier sind einige Beispiele, wie Du CTRL+P in verschiedenen Szenarien verwenden kannst:
Einfaches Drucken eines Arbeitsblatts:
Sub PrintSheet()
Sheets("Tabelle1").PrintOut
End Sub
Drucken mit Vorschau:
Sub PrintPreview()
Application.CommandBars.ExecuteMso "FilePrintPreview"
End Sub
Drucken über SendKeys (mit Vorsicht):
Sub PrintWithSendKeys()
SendKeys "^p"
End Sub
Application.Dialogs(xlDialogPrint).Show für einen stabilen Druckdialog.1. Warum funktioniert SendKeys manchmal nicht?
SendKeys ist abhängig vom Fokus des Fensters. Wenn Excel nicht im Vordergrund ist, wird der Befehl möglicherweise nicht ausgeführt.
2. Gibt es eine bessere Alternative zu CTRL+P?
Ja, Du kannst den Druckdialog direkt über das VBA-Objekt Application.Dialogs aufrufen, was zuverlässiger ist.
3. Wie kann ich die Druckvorschau in Excel aufrufen?
Verwende den Befehl Application.CommandBars.ExecuteMso "FilePrintPreview" in einem Makro, um direkt zur Druckvorschau zu gelangen.
4. Welche Excel-Versionen unterstützen diese Methoden?
Die beschriebenen Methoden funktionieren in Excel 2010 und späteren Versionen.