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.

bestimmte Felder sowie nur Zeilen mit einen Wert "xyz" im Feld ausdrucken...
#1
Meine Suche nach einem Excelforum hat mich direkt zu euch geführt, et voilà und hallo an alle Exclamation

Da meine VBA Künste unterirdisch sind, hoffe ich das mir jemand von euch unter die Arme greifen kann.

Wie im Betreff kurz erwähnt, möchte ich bestimmte einzelne Felder und alle Zeilen mit einen Wert "xyz" in einem Feld von Spalte B - S über ein Togglebutton ausdrucken.
Eine Druckerauswahl vor dem Drucken wäre dann noch das i Tüpfelchen an der ganzen Sache. Blush

Ps. den Togglebutton hab ich schon  :18:
Antworten Top
#2
Hallöchen,

dann würde ich erst mal vorschlagen, dass Du schaust, was der Makrorecorder so leisten kann Smile
Allerdings frage ich mich, was die zweite Aktion des Toggle-Buttons wird oder soll der Anzeigen, dass schon gedruckt wurde? Ansonsten würde ja ein Command-Button reichen.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • wilder
Antworten Top
#3
Big Grin 
Ok ein Command-Button wäre auch ok, schau ich mir mal an.
Aktuell habe ich eine Teil-Lösung bis hier hin:

Private Sub ToggleButton3_Click()
ActiveSheet.PageSetup.PrintArea = "B12:S14"
ActiveSheet.PrintPreview
ActiveSheet.PageSetup.PrintArea = False
End Sub

Der Toggle-Button macht das bis dahin ganz gut, allerdings muss ich die Seite voher noch auf Querformatumstellen sonst passen die Zellen nicht aufs Blatt.

Bei der Sache B12:S14 sollen aber nur Zeilen gedruckt werden welche einen Wert !=  0 in einer Zelle haben.
Außerdem soll vor Zeile B12 ein xbeliebiges Feld vorangestellt werden und nach S14 zwei weitere xbeliebige Felder. Ob das ein Macro so aufnehmen kann?
Bis dahin wäre es schon die halbe Miete.

Für ActiveSheet.PrintPreview gibt es glaube ich auch ein active-x befehl, so habe ich gelesen, dieser zeigt ein Druckerauswahlfenster an und dort gäbe es auch eine Preview, was ideal wäre..

Mal sehen was ich nächste Woche noch dazu finden kann, am Wochenende muss ich "leider" arbeiten.

Danke schon mal für die Tipps, wer sich beteiligen möchte,... freue mich über jede Unterstützung! Blush
Antworten Top
#4
Ehm active-x *hust* sollte wohl eher xlDialogPrint lauten :19:  

OK der Togglebutton kann nicht mit Application.Dialogs(xlDialogPrint).Show umgehen, so scheint mir.

Dafür  stehe ich jetzt an folgender Stelle  mit dem Commandbutton und das sieht schon ganz gut aus:

With ActiveSheet.PageSetup
.Orientation = xlLandscape
        .TopMargin = Application.CentimetersToPoints(1.6)
        .BottomMargin = Application.CentimetersToPoints(1.3)
        .LeftMargin = Application.CentimetersToPoints(0)
        .RightMargin = Application.CentimetersToPoints(0)
        .Zoom = 85
        .CenterHorizontally = True
End With

Dim lngCounter As Long
lngCounter = 1
Do While Cells(lngCounter + 1).Value < 0
  lngCounter = lngCounter + 1
Loop
ActiveSheet.PageSetup.PrintArea = _
  ActiveSheet.Range("B12:S14" & lngCounter).Address
  Application.Dialogs(xlDialogPrint).Show
 
Nun bleibt nur noch die xbeliebige Zelle direkt vor und nach den Zeilen B12:S14. Außerdem werden jetzt noch die Zeillen Nach S:14 angezeigt :(

So genug für heute... :31:
Antworten Top
#5
Hallöchen,

wenn Du vor und nach B12:S14 etwas drucken willst, dann beziehe das in den Bereich mit ein, z.B. B11:S15.
Allerdings beißt sich hier was in der Formulierung:
Nun bleibt nur noch die xbeliebige Zelle direkt vor und nach den Zeilen B12:S14. Außerdem werden jetzt noch die Zeillen Nach S:14 angezeigt
S15 würdest Du ja brauchen, um eine Zelle nach S14 zu drucken - oder meinst Du seitlich?

Übrigens sollte in der Druckvorschau nur der als Druckbereich festgelegte Bereich angezeigt werden - ist das bei Dir nicht der Fall?
Falls da fas fehlgeht - bei neueren Excel-Versionen programmiert man zuweilen die PrintCommunication um die Festlegung des PageSetups.

Code:
Application.PrintCommunication = False
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
Application.PrintCommunication = True
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • wilder
Antworten Top
#6
Brick 
Hallo schauan,

hab jetzt die Tabelle umgebaut und es anhand deiner bisherigen Tipps lösen können.

Thumps_up
Antworten Top


Gehe zu:


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