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

Mehrfachdruck mit Umbenennung

Mehrfachdruck mit Umbenennung
18.11.2020 21:28:47
juergen
https://www.herber.de/bbs/user/141685.xlsx
Hallo zusammen,
ich bräuchte mal wieder die Hilfe von Experten - bin wieder an meine Grenzen gestossen.
Ich möchte eine Datei 20 mal drucken. Vor dem jeweiligen Druck soll eine Zahl (Zelle G1) jeweils um 1 erhöht werden (also von 1 bis 20) - es gäbe auch ein Steuerelement, welches hochzählt. Wichtig dabei ist, dass der Druck ein Datei-Druck ist (z.B. als JPG - entsprechender Drucker ist installiert), und dass zumindest die Dateiendung der Zahl in G1 von 1-20 entspricht. Idealerweise entspricht der Bildname der Datei - plus der Endung 1-20.
Geht das als Makro?
Geht das? Ich habe über 200 solcher Aufgaben umzuwandeln. Geht manuell auch, macht aber keinen richtigen Spaß.
Bin für jede Hilfe dankbar!
Juergen

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mehrfachdruck mit Umbenennung
19.11.2020 00:55:15
fcs
Hallo Juergen,
grundsätzlich kann man die Ausgabe des Druckbereichs per Makro umsetzen.
Bei der Ausgabe als JPG via Druckertreiber habe ich aber das Problem: Wie kann der Dateiname an das Druckprogramm übergeben werden.
Einfacher wäre Ausgabe als PDF. Das geht mit Excel-Bordmitteln.
LG
Franz
Sub BAB_I_Drucken_als_JPG()
Dim wks As Worksheet
Dim iZaehler As Integer
Dim strPfad As String, strFile As String, strPrintFile As String
Set wks = ActiveSheet
'oder
'Set wks =Activeworkbook.worksheets("BAB I")
If MsgBox("Blatt """ & wks.Name & """ jetzt in einer Schleife für verschiedene Werte " _
& "in G1 drucken?" & vbLf & vbLf _
& "Drucker: " & Application.ActivePrinter, _
vbQuestion + vbOKCancel, "Drucken") = vbCancel Then Exit Sub
strPfad = ActiveWorkbook.Path 'Verzeichns für Druck-Datei - ggf. anpassen
strFile = ActiveWorkbook.Name
strFile = Left(ActiveWorkbook.Name, InStrRev(strFile, ".") - 1) & "-"
With wks
For iZaehler = 1 To 20 'Wenn nicht fix, dann Endwert ggf. aus Zelle einlesen
strPrintFile = strPfad & "\" & strFile & Format(iZaehler, "00") & ".jpg"
.Range("G1") = iZaehler
.Calculate
' hier dann die Anweisungen zum Drucken - Syntax für den JPG-Drucker   ?
.PrintOut Preview:=False, printtofile:=True, prtofilename:=strPrintFile
Next
End With
End Sub
Sub BAB_I_Speichern_PDF()
Dim wks As Worksheet
Dim iZaehler As Integer
Dim strPfad As String, strFile As String, strPrintFile As String
Set wks = ActiveSheet
'oder
'Set wks =Activeworkbook.worksheets("BAB I")
If MsgBox("Blatt """ & wks.Name & """ jetzt in einer Schleife für verschiedene Werte in " _
& "G1 als PDF speichern?", _
vbQuestion + vbOKCancel, "Als PDF speichern") = vbCancel Then Exit Sub
strPfad = ActiveWorkbook.Path 'Verzeichns für Druck-Datei - ggf. anpassen
strFile = ActiveWorkbook.Name
strFile = Left(ActiveWorkbook.Name, InStrRev(strFile, ".") - 1) & "-"
With wks
For iZaehler = 1 To 20 'Wenn nicht fix, dann Endwert ggf. aus Zelle einlesen
strPrintFile = strPfad & "\" & strFile & Format(iZaehler, "00") & ".pdf"
.Range("G1") = iZaehler
.Calculate
'Tabellen als PDF speichern
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strPrintFile, ignoreprintareas:=False
Next
End With
End Sub

Anzeige
AW: Mehrfachdruck mit Umbenennung
20.11.2020 15:35:33
juergen
Hallo Franz,
wow, das funktioniert einwandfrei - zumindest die PDF-Variante. Perfekt!!!
Als PDF kann ich die Drucke ebenfalls weiterverarbeiten. Notfalls mache ich noch eine Stapelverarbeitung PDF to JPG, aber vermutlich ist das jetzt gar nicht mehr notwendig.
Ganz lieben Dank!!!
Jürgen
P.S. Kann es sein, dass die PDFs so eine sehr hohe Qualität haben bei extrem kleiner Dateigröße? Kein Vergleich zum "normalen" PDF-Druck. Mit dem normalen Microsoft print to PDF werden fast 3x so groß. So ist das wirklich ideal.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige