Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: CTRL+P

CTRL+P
07.08.2013 11:44:18
Markus
Hallo,
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

Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: CTRL+P
07.08.2013 11:47:34
mumpel
Hallo!
Gruß, René

Drucken2007
07.08.2013 11:48:53
Rudi
Hallo,
in 2007 tut's
Application.Dialogs(xlDialogPrint).Show
auch.
Gruß
Rudi

AW: Drucken2007
07.08.2013 18:18:19
mumpel
"ExecuteMso" ist aber "feiner".

Anzeige
AW: CTRL+P
07.08.2013 11:47:35
Rudi
Hallo,
Application.Dialogs(xlDialogPrint).Show
Gruß
Rudi

AW: CTRL+P
07.08.2013 16:48:48
Markus
Hallo Rudi,
es funktioniert, aber es ist die falsche Ansicht.
(Druckansicht)
Ich habe ein *.jpg hochgeladen, was ich meinte.
Markus
Userbild

Anzeige
das ist nie und nimmer ...
07.08.2013 17:14:00
Rudi
...Excel2000.
Diese Version kenne ich nicht.
Probier Mumpels Tipp.
Gruß
Rudi

AW: das ist nie und nimmer ...
07.08.2013 18:04:23
mumpel
1. Das ist Excel 2010.
2. In diese Ansicht kommt man nur per SendKeys. Mein Code ruft den altbekannten Druckdialog auf.

AW: das ist nie und nimmer ...
08.08.2013 04:17:41
Markus
Hallo,
Also ich habe wirklich Office 2010.
Mit ALT+D und dann U komme ich zu 100% auf die Seitenvorschau (wie mein Bild zeigte).
Ich hab's auch versucht mit folgendem Makro.
Funktioniert aber leider nicht immer und ich musste noch den unschönen Range einbauen.
Markus
Sub geht_Manchmal()
Range("a1").Select
SendKeys "^p"
End Sub

Anzeige
AW: das ist nie und nimmer ...
08.08.2013 05:38:14
mumpel
Vergiss es. Das haut nicht hin. Normalerweise: SendKeys "%DU". Aber das funktioniert nur sehr selten. Entweder Du benutzt die altbekannte Druckvorschau (Application.CommandBars.ExecuteMso "FilePrintPreview"), oder Du musst manuell zum Druckmenü gehen.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige

Infobox / Tutorial

CTRL+P in Excel: So funktioniert's


Schritt-für-Schritt-Anleitung

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:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke im Projekt-Explorer mit der rechten Maustaste auf VBAProject (DeineDatei.xlsx) und wähle Einfügen > Modul.

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

    Sub PrintWithControlP()
       Application.Dialogs(xlDialogPrint).Show
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. 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

Häufige Fehler und Lösungen

  • Fehler: SendKeys funktioniert nicht zuverlässig

    • Lösung: Verwende stattdessen Application.Dialogs(xlDialogPrint).Show, um den Druckdialog aufzurufen.
  • Fehler: Druckansicht erscheint nicht

    • Lösung: Stelle sicher, dass Du den korrekten Befehl verwendest. Mit Application.CommandBars.ExecuteMso "FilePrintPreview" gelangst Du zur Druckvorschau.

Alternative Methoden

Falls Du CTRL+P nicht über ein Makro auslösen möchtest, kannst Du auch diese Methoden verwenden:

  • Direktes Drucken über das Menü:

    • Klicke auf Datei > Drucken, um den Druckdialog manuell zu öffnen.
  • Verwendung von Tastenkombinationen:

    • Du kannst Strg + P oder Ctrl + P drücken, um den Druckdialog sofort zu öffnen.

Praktische Beispiele

Hier sind einige Beispiele, wie Du CTRL+P in verschiedenen Szenarien verwenden kannst:

  1. Einfaches Drucken eines Arbeitsblatts:

    Sub PrintSheet()
       Sheets("Tabelle1").PrintOut
    End Sub
  2. Drucken mit Vorschau:

    Sub PrintPreview()
       Application.CommandBars.ExecuteMso "FilePrintPreview"
    End Sub
  3. Drucken über SendKeys (mit Vorsicht):

    Sub PrintWithSendKeys()
       SendKeys "^p"
    End Sub

Tipps für Profis

  • Verwende Application.Dialogs(xlDialogPrint).Show für einen stabilen Druckdialog.
  • Automatisiere Deine Druckaufträge: Verwende VBA, um Druckaufträge basierend auf bestimmten Kriterien auszuführen.
  • Teste Deine Makros regelmäßig, um sicherzustellen, dass sie in der gewünschten Excel-Version funktionieren.

FAQ: Häufige Fragen

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.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige