Office: (Office 2016) Auswahlfenster zum drucken von Mitarbeiterblätter

Helfe beim Thema Auswahlfenster zum drucken von Mitarbeiterblätter in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Guten Abend Ihr lieben Excelprofis Ich benötige mal wieder Eure sehr geschätzte Hilfe. Meine Chefin hat mich gebeten Ihr eine möglichkeit zu erstellen... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Elguano, 1. Dezember 2024.

  1. Elguano Erfahrener User

    Auswahlfenster zum drucken von Mitarbeiterblätter


    Guten Abend Ihr lieben Excelprofis
    Ich benötige mal wieder Eure sehr geschätzte Hilfe.
    Meine Chefin hat mich gebeten Ihr eine möglichkeit zu erstellen um mehrere Mitarbeiterblätter gleichzeitig ausdrucken zu können, da Ihr das normale druckprozedere zu Zeitintensiv ist.
    Daraufhin habe ich ein Macro aufgenommen mit allen Mitarbeitern und dem Bereich (A1-O708) der ausgedruckt werden soll. Hier habe ich aber das Problem, dass immer "alle" Mitarbeiterblätter ausgedruckt werden die im Macro eingefügt sind.
    Da aber auch mit der Zeit einzelne Mitarbeiter ausscheiden und andere Mitarbeiter eingestellt werden, funktioniert mein vorgehen nicht wie gewünscht, weil sich die Namen der Mitarbeiterblätter ändern.
    Jetzt ist mir der Gedanke gekommen, das man das eventuell mit einem Auswahlfenster mit anklickbarem Kästchen vor jedem Mitarbeiter bewerkstelligen könnte.
    Ist das möglich und wenn ja, kann mir damit jemand von Euch unter die Arme greifen? Zur Zeit sind es 44 Mitarbeiterblätter die im Auswahlfenster sichtbar sein sollen.

    Für Fragen von Euch stehe ich gerne zur Verfügung.
    Mit bestem Dank im Voraus und lieben Grüßen Euer
    Ralf B. aus B. an der E.
     
    Elguano, 1. Dezember 2024
    #1
  2. {Boris} Erfahrener User
    Hi,

    am Einfachsten listest Du die Namen aller Blätter in einer Spalte auf und markierst rechts daneben z. B. mit einem x die Blätter, die gedruckt werden sollen. Dann gehst Du mit ner Schleife (For Each) über die Spalte mit den x und druckst das Blatt links daneben (Offset) nur, wenn es mit x markiert ist.
     
    {Boris}, 1. Dezember 2024
    #2
  3. Elguano Erfahrener User
    Guten Abend Boris
    Erstmal vielen Dank für Deine Idee und Interesse an diesem Thema!
    Dein Vorschlag sieht eigentlich ganz gut aus. Das Problem ist hierbei aber das wenn sich die Namen der Mitarbeiterblätter ändern, dies wieder in der Auflistung geändert werden muss. Das ist aber wieder ein zeitlicher Aufwand den ich meiner Chefin ersparen möchte.
    Ich stelle mir vor, dass man einen VBA Code (Macro) schreiben kann der das automatisch erkennt wie die einzelnen Mitarbeiterblätter benannt sind und somit nur das anklicken des Namens oder eines Kästchens nötig wäre.
    Da ich aber von VBA praktisch keine Ahnung habe bin ich darauf angewiesen das jemand den Code erstellen kann. Ich kann nur Macros aufzeichnen aber nicht selber schreiben.
    Trotzdem werde ich Deinen Vorschlag im Hinterkopf behalten und versuchen umzusetzen wenn es keine anderen Vorschläge geben wird.
    Besten Dank für Deine schnelle Antwort
    Ralf B. aus B. an der E.
     
    Elguano, 1. Dezember 2024
    #3
  4. {Boris} Erfahrener User

    Auswahlfenster zum drucken von Mitarbeiterblätter

    Hi,

    ich bin grad nur am Handy und habe daher ChatGPT gebeten, den Code zu schreiben.
    Dazu brauchst Du ein Blatt mit dem Namen „Liste“, in dem ab A2 untereinander alle Blattnamen stehen. Wie man die automatisch auflistet, weiß ChatGPT sicher auch. Rechts daneben markierst Du die Blätter mit einem x, die gedruckt werden sollen.

    Sub DruckeMarkierteBlaetter()
    Dim ws As Worksheet
    Dim i As Long
    Dim BlattName As String

    ' Arbeitsblatt mit der Liste definieren (anpassen, falls notwendig)
    Set ws = ThisWorkbook.Sheets("Liste")

    ' Durch die Einträge in Spalte A und B iterieren
    For i = 2 To ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
    BlattName = ws.Cells(i, 1).Value

    ' Prüfen, ob ein "x" in Spalte B steht
    If ws.Cells(i, 2).Value = "x" Then
    On Error Resume Next ' Fehlerbehandlung, falls das Blatt nicht existiert
    ThisWorkbook.Sheets(BlattName).PrintOut
    On Error GoTo 0
    End If
    Next i

    MsgBox "Druck abgeschlossen!", vbInformation
    End Sub
     
    {Boris}, 1. Dezember 2024
    #4
  5. Elguano Erfahrener User
    Hallo Boris
    Ich habe Deine Anleitung umgesetzt und getestet.
    Es scheint zu funktionieren, dass der Code die mit X bezeichneten Blätter druckt. Er druckt aber zuviele Seiten pro Mitarbeiterblatt. Ich kann mir nicht erklären, warum 26 Seiten pro Mitarbeiter ausgedruckt werden. Wo und was muss ich in den Code einfügen um nur den Bereich A1 bis O708 pro Mitarbeiter zu drucken. Ich habe da
    Range("A1:O708").Select in einem anderen DruckModul drin stehen wenn das ganze Jahr ausgedruckt werden soll.

    Ist das machbar?
    Vielen Dank für Deine schnelle Hilfe
    Ralf B. aus B. an der E.
     
    Elguano, 1. Dezember 2024
    #5
  6. Exl121150 Erfahrener User
    Hallo,

    Druckbereiche kann man theoretisch auch mit VBA festlegen, aber weit einfacher geht das, wenn man das händisch je Arbeitsblatt erledigt:
    Menüband > Tabulator "Seitenlayout" > Gruppe "Seite einrichten": Hier gibt es alle Buttons, die nötig sind, um die Druckformatierung je Arbeitsblatt einzustellen. Das wirst du schon selber machen müssen (Seitenränder, Papierformate fürs Drucken, Druckbereiche, Umbrüche innerhalb der Druckbereiche, etc.).
    Das ist aber auch ein Thema, das zu den elementaren Excel-Grundlagen gehört.
     
    Exl121150, 2. Dezember 2024
    #6
  7. {Boris} Erfahrener User
    Hi Ralf,

    das klingt alles nach: Deine Chefin hat irgendeine Exceldatei zusammengeklöppelt - ohne jede Grundlagenkenntnisse. Und jetzt sollst Du "zaubern" und das Datenchaos per Knopfdruck auf dem Silbertablett servieren. Leider hat sie aber Deine Programmierkenntnisse dazu unterschätzt (das ist kein Vorwurf an Dich!).
    Den Code zum Ausdrucken der markierten Blätter hast Du ja bereits. Ebenfalls den Hinweis zu den Druckbereichen.
    Hier hast Du noch einen Code, der immer alle vorhandenen Blätter auflistet. Dazu füge ein neues Blatt ein und benenne es wie Du möchtest. Im VBA-Editor machst Du dann links einen Doppelklick auf genau dieses neue Blatt und fügst rechts diesen Code ein. Er wird immer dann ausgeführt, wenn das Blatt aktiviert (ausgewählt) wird und schreibt alle aktuell vorhandenen Blätter in Spalte A ab A2.

    Code:
    Private Sub Worksheet_Activate()
    Dim x As Long
    Columns("A:B").ClearContents
    For x = 1 To ThisWorkbook.Worksheets.Count
        Cells(x + 1, 1) = Worksheets(x).Name
    Next x
    Range("A1") = "Blätter": Range("B1") = "Drucken?"
    Range("A1:B1").Font.Bold = True
    Columns("A:B").AutoFit
    End Sub
     
    {Boris}, 2. Dezember 2024
    #7
  8. Elguano Erfahrener User

    Auswahlfenster zum drucken von Mitarbeiterblätter

    Guten Abend zusammen
    @ Boris
    Vielen Dank für den zweiten Code. Auch dieser funktioniert wie von Dir beschrieben.
    Zu
    ist so nicht richtig. Sie hat nur das Grundgerüst erstellt wie die Blätter aussehen sollen. Bevor ich in der Firma angefangen habe, hat Sie alles Händisch eingetragen und auch im Kopf ausgerechnet. Es geht sich hier um Stundenzettel der Mitarbeiter.
    Als mir das zu umständlich wurde, habe ich Ihr angeboten die Datei zu vereinfachen in dem ich Formeln zur Berechnung von Stunden eingefügt habe. Dies sind fast alles WENN() ODER() UND() Formeln. Dadurch hatte Sie viel weniger Arbeit und mehr Zeit für andere Dinge die Sie auch noch machen muss. Mit der Zeit sind immerwieder änderungen nötig geworden weil sich Steuerrechtlich Sachen geändert haben. All das konnte ich bisher gut für Sie ändern um Ihr die Arbeit zu erleichtern. Für eine Neue Datei für 2025 hat Sie mich gefragt ob es möglich wäre mehrere Mitarbeiter gleichzeitig ausdrucken zu lassen ohne den langwierigen Weg über das normale Druckprozedere zu gehen.
    Da habe ich mir Gedanken gemacht und ein Macro "Aufgezeichnet" mit dem ""ALLE"" Mitarbeiter ausgedruckt werden können. Dabei ist mir aber aufgefallen, dass wenn Mitarbeiter die Firma verlassen oder hinzukommen das Macro immerwieder angepasst werden muss. Wie ich ja schon geschrieben habe, habe ich vom VBA Prorammieren (Schreiben) keine Ahnung.
    Deshalb habe ich dieses Thema hier angefangen und auf Hilfe gehofft. Das hat ja auch bisher gut funktioniert. Bis ich gemerkt habe, dass 26 Seiten statt nur 12 Seiten pro Mitarbeiter gedruckt werden.
    Bei dem Macro was ich aufgezeichnet habe werden aber nur 12 Seiten gedruckt. Das aber eben nur für jeden einzelnen Mitarbeiter. Der Code ist folgender:

    Code:
    Sub Drucken_Jahr()
    '
    ' Drucken_Jahr Makro
    '
    
    '
        ActiveWindow.SmallScroll Down:=9
        Range("A1:o708").Select
        Selection.PrintOut Copies:=1
        Range("a1").Select
    End Sub
    Wenn ich diesen oder einen passenden Code mit in den Ersten Code von Dir einfügen könnte, wäre das wohl der Perfekte Code um dieses Problem zu 100% zu lösen.

    Kannst Du Dir vorstellen wie man das einfügen kann?

    Mit bestem Dank für Deine guten Lösungen und angemessene Grüße
    Ralf B. aus B. an der E.
     
    Elguano, 3. Dezember 2024
    #8
  9. {Boris} Erfahrener User
    Hi,

    beherzige den Tipp von Anton und richte die Seiten entsprechend ein (z.B. mittels Druckbereich, dazu z.B. auf x Seiten breit, y Seiten hoch usw.).
     
    {Boris}, 3. Dezember 2024
    #9
  10. Elguano Erfahrener User
    Guten Abend Boris
    Entschuldige bitte, das ich erst so Spät Antworten kann. Diese Woche habe ich Spätschicht und komme erst um 23 Uhr nach Hause.
    Ich habe mir das ganze mal angeschaut.
    Folgendes passiert wenn ich über die Menüleiste auf den Drucker klicke und dann auf Vorschau.
    Hier werden mir 26 Seiten zum drucken angezeigt. Die ersten 12 Seiten sind korrekt. Ab der 13ten Seite wird mir auf jeder Seite nur das Firmenlogo angezeigt das aber garnicht vorhanden ist. Wenn ich aber vorher auf markierte Seiten klicke werden mir nur die 12 markierten Seiten angezeigt. Das muss doch irgendwie ein Programmfehler sein, weil es nur 12 Seiten gibt die auch Werte enthalten. Es liegt also definitiv nicht an der Seiteneinrichtung.
    Meine aufgenommenen Codes sind ja alle als markierte Seiten zum drucken erstellt. Wenn ich also auf diese Schaltflächen klicke, werden auch nur 12 Seiten ausgedruckt.
    Wo jetzt der Fehler liegt, weis ich wirklich nicht.
    Wenn dazu ein Mitleser etwas schreiben kann wäre ich Euch sehr Dankbar.
    Das einzige was mir einfällt wäre, eine komplett neue Datei zu erstellen um herauszufinden ob es dann wieder richtig läuft.
    Das wiederrum ist ein Riesen großer Aufwand der sehr viel Zeit in Anspruch nehmen würde.

    Mit freundlichen Grüßen
    Ralf B. aus B. an der E.
     
  11. RPP63_neu
    RPP63_neu Erfahrener User
    Moin!
    Welche Zelle wird angesprungen, wenn Du Strg+Ende drückst?
    (wahrscheinlich eine Zelle weit außerhalb des erwarteten Bereichs)
    Falls dies so ist:
    Werden Formeln auf Vorrat gehalten (mit Ausgabe eines Leerstrings "")?
    Lösche alle Spalten und Zeilen außerhalb der "eigentlichen" Daten.
    Zum Firmenlogo:
    Dies dürfte sich in der Kopfzeile befinden.

    Gruß Ralf
     
    RPP63_neu, 4. Dezember 2024
    #11
  12. Elguano Erfahrener User
    Guten Morgen Ralf
    Ich danke Dir für Deine Idee.
    Die angesprungene Zelle ist P709.
    Das ist auch die letzte Zeile in der Daten stehen.
    Ich habe auch in älteren Dateien nachgesehen. Auch in denen (von 2011 bis 2024) besteht das gleiche Dilemma.
    Keine Ahnung woher das kommt.
    Mit freundlichen Grüßen
    Ralf B. aus B. am der E.
     
  13. RPP63_neu
    RPP63_neu Erfahrener User

    Auswahlfenster zum drucken von Mitarbeiterblätter

    Aus der Threaderöffnung:
    Jetzt ist es Zelle P709
    Zeigt Dir Ansicht → Umbruchvorschau eine gestrichelte senkrechte Linie zwischen O und der (leeren?) Spalte P an?
    Dann lösche Spalte P.
    Ansonsten kann ich Dir ohne Datei kaum weiter helfen.

    Gruß Ralf
     
    RPP63_neu, 4. Dezember 2024
    #13
  14. Elguano Erfahrener User
    Hallo Ralf
    Da liegt wohl eine Ursache vom Problem drin. Es wird die gestrichelte Linie sowohl zwischen Spalte O und P als auch an jedem Ende des Monats, also zwischen Zeile 59 und 60;118 und 119;177 und178; u.s.w. angezeigt
    In der Spalte P stehen folgende Formeln drin =ODER(TEXT(B15;"TTT")="Mo";TEXT(B15;"TTT")="Di";TEXT(B15;"TTT")="Mi";TEXT(B15;"TTT")="Do";TEXT(B15;"TTT")="Fr") um zu ermitteln welcher Wochentag in Spalte B steht. Diese sind aber für den Betrachter "Unsichtbar".
    Aber selbst wenn ich die Spalte P lösche, zeigt die Druckvorschau immernoch 20 Seiten an. Das ist wie zuvor Beschrieben das Firmenlogo was ich als JPG für jeden Monat im Bereich z.B. D1 bis M8 in die Blätter eingefügt habe. Da muss ich mal gucken ob ich für die Spalte P eine andere Lösung finde.
    Hilft Dir das weiter? Die Datei hat eine Größe von 3,5 MB.
    Ich Denke, das ich Dir die Datei zukommen lassen könnte, da dort keine Persönlichen Daten ausser die Namen der Mitarbeiter drin stehen.
    Du darfst mir gerne weitere Tipps und Hinweise geben denen ich dann nachgehen kann.
    Mit bestem Dank bis hierhin und freundliche Grüße
    Ralf B. aus B. an der E.
     
  15. RPP63_neu
    RPP63_neu Erfahrener User
    Dann blende doch die "unsichtbaren" Spalten einfach aus!
    Dann sind sie auch für den Drucker unsichtbar. Auswahlfenster zum drucken von Mitarbeiterblätter *:p*
    Übrigens:
    Statt
    =ODER(TEXT(B15;"TTT")="Mo";TEXT(B15;"TTT")="Di";TEXT(B15;"TTT")="Mi";TEXT(B15;"TTT")="Do";TEXT(B15;"TTT")="Fr")
    würde ich ja folgendes nehmen:
    =WOCHENTAG(B15;2)<6
     
    RPP63_neu, 4. Dezember 2024
    #15
Thema:

Auswahlfenster zum drucken von Mitarbeiterblätter

Die Seite wird geladen...
  1. Auswahlfenster zum drucken von Mitarbeiterblätter - Similar Threads - Auswahlfenster drucken Mitarbeiterblätter

  2. Werte in Spalten Kopieren und drucken

    in Microsoft Excel Hilfe
    Werte in Spalten Kopieren und drucken: Hallo zusammen. In Tabelle 5 Spalte BA2:BA116 stehen Werte. Diese Werte sollen nach und nach in Tabellenblatt7 in Zelle A3 kopiert werden und dann drucken. Dann der nächste Wert. Kann mir da mal...
  3. Folien im benutzerdiferenzierten Maß drucken

    in Microsoft PowerPoint Hilfe
    Folien im benutzerdiferenzierten Maß drucken: Hallo! Ich möchte PowerPoint Etiketten für die Direktvermarktung am Bauernhof erstellen, da man ja grundsätzlich die Folien im benutzerdifferenzierten Maß anlegen kann. So kann man mit den...
  4. Makro wird nicht angezeigt im Makro Auswahlfenster

    in Microsoft Excel Hilfe
    Makro wird nicht angezeigt im Makro Auswahlfenster: Hallo, wenn ich mein Makro ausführen möchte, öffnet sich das Makro Auswahlfenster. Allerdings wird das Makro nicht aufgelistet. Das Makro befindet sich in der PERSONAL.xlsb Arbeitsmappe. Die...
  5. Auswahlfenster einfügen

    in Microsoft Excel Hilfe
    Auswahlfenster einfügen: Hallo, Dropdown kann ich einfügen mit Verweis auf entsprechende Felder. Aber ich möchte im Rahmen einer Teilnehmerliste ein DropDown Feld einfügen mit einem grünen "Haken" für Teilnahme und ein...
  6. Auswahlfenster

    in Microsoft Excel Hilfe
    Auswahlfenster: Guten Abend, ich hoffe meine letzte Frage für heute ;-) Ich habe ein Auswahlfenster generiert in dem alle Wichtigen Daten stehen. Wenn ich einen Namen aus diesem Fenster auswähle dann...
  7. Makro Auswahlfenster auf Knopfdruck

    in Microsoft Excel Hilfe
    Makro Auswahlfenster auf Knopfdruck: Hallo zusammen, ich habe hier im Forum durch Mitlesen schon oft Hilfe gefunden. Jetzt habe ich aber ein Anliegen für das ich noch keine Lösung finden konnte. Ich habe eine Liste mit...
  8. Addition mit variablem Auswahlfenster

    in Microsoft Excel Hilfe
    Addition mit variablem Auswahlfenster: Hallo Forum-Gemeinde, ich brauche eure Hilfe. Ich komme einfach nicht mehr weiter. Ich habe eine Anwendung die ich mit einem Auswahlfenster auswählen will. Die Anwendung hier zu erklären ist...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden