Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
984to988
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
984to988
984to988
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Mehrfachdruck per Makro

Mehrfachdruck per Makro
14.06.2008 21:10:00
sammy
Hallo Excel-User,
ich bastle mal wieder an einer Optimierung meiner Excel-Daten.
Vielleicht könnt Ihr mir helfen.
Vorhaben:
In einem Tabellenblatt werden alle Wareneingänge mit Sachnummer aufgelistet.
Nun sollen von einigen Sachnummern die dazugehörigen Wareneingänge
ausgedruckt werden. Im 2. Tabellenblatt möchte ich die zum Drucken gewünschten
Sachnummer eingeben und anschließend per Button (Makro) diese alle mit
einem Rutsch ausdrucken. Pro Sachnummer incl. Wareneingänge auf ein Blatt.
Gibt es hier überhaupt eine Möglichkeit unter Excel?
Derzeitiger Ansatz:
Bisher suche ich mir über einen benutzerdefinierten Filter die gewünschte
Sachnummer (mit Wareneingänge) und drucke diese dann aus.
Diesen Vorgang muss ich für sämtliche zu druckende Sachnummern wiederholen.
Ich habe eine Beispieldatei hochgeladen. So wie im 3. Tabellenblatt soll dann
der Ausdruck (pro Sachnummer je ein Blatt) aussehen.
Könnt Ihr mal drüber schaun und mir vielleicht einen Rat geben?
Besten Dank im Voraus.
MfG sammy
https://www.herber.de/bbs/user/53080.xls

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mehrfachdruck per Makro
14.06.2008 21:32:05
Josef
Hallo Sammy,
diesen Code in ein allgemeines Modul und der Schaltfläche zuweisen.
' **********************************************************************
' Modul: Modul2 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub SachnummernDrucken()
Dim rng As Range

On Error GoTo ErrExit
Application.ScreenUpdating = False

With Sheets("Ausgangstabelle")
    
    If .AutoFilterMode = False Then .Range("A1").AutoFilter
    
    Sheets("Druckbeispiel").Visible = xlSheetVisible
    
    For Each rng In Sheets("Wunschmaske").Range("A4:A30")
        If Trim$(rng) <> "" Then
            Sheets("Druckbeispiel").Cells.ClearContents
            .Range("A1").AutoFilter Field:=2, Criteria1:=rng.Text
            .Cells.SpecialCells(xlCellTypeVisible).Copy Sheets("Druckbeispiel").Range("A1")
            Sheets("Druckbeispiel").PrintOut
        End If
    Next
    
    Sheets("Druckbeispiel").Cells.ClearContents
    Sheets("Druckbeispiel").Visible = xlSheetVeryHidden
    
    If .AutoFilterMode = True Then .Range("A1").AutoFilter
    
End With

ErrExit:
Application.ScreenUpdating = True
End Sub


Gruß Sepp



Anzeige
AW: Mehrfachdruck per Makro
14.06.2008 21:43:27
Rocky
Hallo,
ist nicht elegant wie die meines vorredners, aber läuft.
Sub drucken()
Application.ScreenUpdating = False
Dim a As Byte
For a = 4 To 30
b = Sheets("Wunschmaske").Cells(a, 1).Value
If b > 0 Then
Sheets("Ausgangstabelle").Columns("B:B").AutoFilter Field:=1, Criteria1:=b
ActiveSheet.PrintOut
End If
Next a
Selection.AutoFilter
Application.ScreenUpdating = True
End Sub
Gruß Rocky



Wenn unter den Blinden der Einäugige König ist, dann findet man hier die Herren der Ringe!


Anzeige
AW: Mehrfachdruck per Makro
14.06.2008 22:20:00
sammy
Hallo zusammen,
zuerst mal vielen Dank für Eure Hilfe, echt SUUPER.
@ Sepp
Hier merkt man, dass ein echter Profi am Werk ist, alles funzt.
Herzlichen Dank dafür.
Kleine Frage noch:
Nach Ausführen des Makros verschwindet das Blatt "Druckbeispiel".
Wenn sich später meine Grundtabelle ändert, d. h. die Sachnummer
stehen jetzt zwar im gleichen Tabellenblatt, jedoch in anderer Spalte,
was muss ich dann an diesem Makro ändern?
@Rocky
Auch vielen Dank für den Vorschlag. Habe es noch nicht getestet.
Habe heute keine Lust mehr, aber morgen früh mache ich weiter.
Melde mich dann bestimmt.
@ all
Vielleicht noch eine banale Frage, unabhängig von diese Threat:
Kann man ein Makro in einer Formel einbauen und so aufrufen?
Euch allen eine gute Nacht und bis morgen....
Schöne Grüße
Sammy

Anzeige
AW: Mehrfachdruck per Makro
14.06.2008 22:24:00
Josef
Hallo Sammy,
in der Zeile

.Range("A1").AutoFilter Field:=2, Criteria1:=rng.Text


die Zahl hinter "Fied:=" an die Spaltennummer anpassen.
Das Blatt Druckbeispiel wird durch


Sheets("Druckbeispiel").Visible = xlSheetVeryHidden


ausgeblendet, wenn du das nicht willst, einfach diese Zeile löschen.


Gruß Sepp



AW: Mehrfachdruck per Makro
15.06.2008 14:35:00
sammy
Hallo zusammen,
@ Sepp: Danke, es läuft bisher alles super. Werde es kommende Wochen mit
einer umfangreicheren Liste testen.
Gibt es auch auf meine "banale" Frage eine Lösung:
(Kann man ein Makro auch in eine Formel einbauen und so aufrufen?)
@ Rocky: Habe Dein Makro auch getestet, bekomme hier allerdings einen Laufzeitfehler
und gedruckt wird nur die Eingabemaske der Sachnummern, nicht in Form des "Wunschausdrucks".
Trotzdem schon mal vielen Dank.
Schöne Grüße
sammy

Anzeige
AW: Mehrfachdruck per Makro
15.06.2008 16:03:47
Josef
Hallo Sammy,
der Makroaufruf aus einer Tabellenfunktion geht so.
Tabelle1

 AB
11 

Formeln der Tabelle
ZelleFormel
B1=WENN(A1=1;callmakro("test1"); callmakro("test2"))
Excel Tabellen im Web darstellen  Excel Jeanie HTML
Und dazu diesen Code in einem allgemeinen Modul.
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Public Function CallMakro(Makroname As String) As String
Application.Run Makroname
CallMakro = ""
End Function


Sub test1()
MsgBox "Test1"
End Sub
Sub test2()
MsgBox "Test2"
End Sub


Gruß Sepp



Anzeige
AW: Mehrfachdruck per Makro
15.06.2008 17:18:20
sammy
Hallo Sepp,
alles absolut bestens durch den Mann für alle (Excel-) Fälle.
Nochmals vielen Dank für alles.
Schöne Grüße
sammy

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige