Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Drucken-Button programmieren
#1
Hallo zusammen,

ich habe einen Command-Button zum Drucken programmiert. 
Kurz zur Erklärung. In dem Excel-Reiter gibt es ein Protokoll, welches gedruckt werden soll. (im Bereich $A$1:$CX$119).
Durch den Drucken-Button wird alles über einen PDF-Creator in einer PDF gespeichert.
Über eine Bildlaufleiste wird das Protokoll mit neuen Daten gefüllt.

1  ActiveSheet.PageSetup.PrintArea = "$A$1:$CX$119"
2      Application.Dialogs(xlDialogPrint).Show
3      ActiveSheet.Cells(11, 107).Activate                                        //Diese Zelle gibt an, welches Protokoll gerade angezeigt wird.
4      ActiveCell.Value = ActiveSheet.Cells(6, 107)                           //Diese Zelle gibt an, von welcher Dokumentennummer an gedruckt werden soll.
5      While ActiveCell.Value < ActiveSheet.Cells(8, 107)                  //Diese Zelle gibt an bis zu welcher Dokumentennummer gedruckt werden soll.
6          ActiveCell.Value = ActiveCell.Value + 1
7          If ActiveSheet.Cells(66, 72) = "" Then ActiveCell.Value = ActiveCell.Value + 1 Else ActiveSheet.PrintOut //(66, 72 ist eine Zelle, welche leer ist wenn keine Daten für dieses Protokoll vorliegen)
8     Wend


Bis auf zwei Mängel funktioniert der Code auch. Die Probleme bestehen darin, dass er einmal das derzeitige Protokoll druckt, bevor es zu dem Startwert geändert wird.(Zeile 4)[Das Protokoll aus Zeile 3 wird somit einmal gedruckt bevor Zeile 4 den Wert ändert]. Und das zweite Problem besteht darin, dass er immer ein Protokoll zuviel rausfiltert, wenn zwischendurch immer mal leere Protokolle sind. (welche über Zeile 7 rausgefiltert werden) 
Damit meine ich, dass wenn Protokoll 5-7 leer sind, dann druckt er Protokoll 5-8 nicht. Also geht jedesmal eine Seite verloren, welche ich benötige.

Bitte erklärt mir, weshalb mein Code nicht richtig funktioniert.

Mit freundlichen Grüßen
Lucas
Antworten Top
#2
Hallo,

bevor Du hier zur Rosine vertrocknest, hole ich Dich mal wieder vor.

Wie wäre es, Du würdest eine Beispieldatei zeigen?
Wenn ich Du wäre, würde ich mir davon mehr Erfolg versprechen.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#3
Hallöchen,

könnte es sein, das Du erst mit Zeile 2 druckst und dann in Zeile 4 den Wert änderst? Eventuell solltest Du da mal die Reihenfolge ändern ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste