Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.04.2024 20:05:21
28.04.2024 18:33:31
28.04.2024 18:25:12
Anzeige
Archiv - Navigation
1932to1936
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

Formulardruck via VBA in Schlaufe

Formulardruck via VBA in Schlaufe
18.06.2023 00:01:57
Heer

Guten Abend Zusammen

Ich habe eine Tabellenblatt Datenbank und ein Tabellenblatt Formular

Ich möchte jetzt mehrere Formulare ausdrucken, rsp. ein PDF erstellen.
Aktiver Drucker oder Microsoft Print to PDF A4 quer
Schön wäre natürlich wenn es nur eine PDF Datei gibt, speichern in Dokumente oder gleich mit aufpoppender Speichermaske.....
Ausdruckbeispiele habe ich im Tabellenblatt DRUCK

• Code Starten über CommandButton1
• pro Datenzeile eine Druckseite
• Nur die Datenzeile in der Gruppe, wo im Tabellenblatt Formular [E2] definiert ist.
-> Gruppe im Tabellenblatt Datenbank SPALTE A
• Vor dem Druck Aktives Bauteil beschriften, im Tabellenblatt Formular [G1]
-> Nr. im Tabellenblatt Datenbank SPALTE B

• Excel soll dann dann automatisch die SVerweise von den übrigen Formularfelder aktualisieren.
Tabelle so ohne VBA gelayoutet [J1] [M1] resp. alle Cyan Felder
• Anschliessend Drucken in der Schlaufe
(Z.B in der Datenbank wäre somit in der Gruppe 1 -> 3Datensätze, resp. 3 Seiten.


Excel
https://www.herber.de/bbs/user/159613.xlsm




Ist das möglich?

Gruss
Chris Heer

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

Betreff
Datum
Anwender
Anzeige
AW: Formulardruck via VBA in Schlaufe
18.06.2023 00:49:28
onur
Klar ist das möglich.
Aber was ist eine Schlaufe?


AW: Formulardruck via VBA in Schlaufe
18.06.2023 08:37:40
Chris Heer
Hallo Onur

Eine Schlaufe ist aus meiner Sicht

• Starten z.B. bei A3 (Spalte A)
• Prüfen ob in der Zelle der Inhalt von Zelle [Formular] [E2] Inhalt [1] entspricht.

• Falls JA; Druck gem. Idee unten ausführen
• Falls Nein; nächste Zeile kontrollieren
• Falls Keinen Inhalt mehr -> Code beenden


AW: Formulardruck via VBA in Schlaufe
18.06.2023 09:11:20
Pappawinni
Schaufe ist ein Ring aus biegsamem Material.
Synonyme: Schleife, Schlinge
Wobei im Grunde eine Schleife üblicherweise zwei Schlaufen hat, also das Ding, was sich manche um den Hals binden, oder was man mit Schnürsenkeln macht.
Bin gespannt, ob jemand mal nach einer For-Schlinge fragt.


Anzeige
AW: Formulardruck via VBA in Schlaufe
18.06.2023 12:26:30
onur
Oder nach einem TÜV-Plakat.


AW: Formulardruck via VBA in Schleife
19.06.2023 21:31:46
Pappawinni
Outsch, das ist unter gegangen, wegen der Schlaufen-Blödelei.
Viel Code steht da aber auch noch nicht drinnen (0). Was da genau in welcher Reihenfolge gedruckt werden soll, hab ich leider auch nicht wirklich verstanden.
Es wird aber wohl immer nur einzelne Seiten geben, schätze ich.
Ob sich da ein Programmier-Aufwand lohnt ?


AW: Formulardruck via VBA in Schlaufe
19.06.2023 23:49:20
Pappawinni
Hier mal etwas Code, der abhängig von der eingestellten Gruppe die entsprechenden Seiten dru.., äh als PDF speichert.
Ich hab da ne feste Benennung der Dateien aus dem Namen des Excel + Gruppe + Bauteil zusammen gesetzt.
Da musst du halt aufpassen, dass du dir nichts überschreibst.
Der Pfad für die PDFs ist der Default. Da musst du ggf. etwas anderes definieren.
Druckbereich, Seitenformat usw. hab ich nicht eingebaut, das stellst du dir einmal ein und gut.

Private Sub CommandButton1_Click()

    Dim sFile As String, sFileName As String
    Dim rngPrnArray As Range
    Dim rngPart As Range
    Dim rngGroup As Range
    Dim lngPart As Long, lngGroup As Long
    Dim i As Long
        
    Set rngPrnArray = ThisWorkbook.Sheets("Datenbank").Range("A3:B10")
    Set rngGroup = ThisWorkbook.Sheets("Formular").Range("E2")
    Set rngPart = ThisWorkbook.Sheets("Formular").Range("G1")
     
    lngGroup = rngGroup.Value
    
    For i = 1 To rngPrnArray.Rows.Count
        If rngPrnArray.Cells(i, 1) = lngGroup Then
            
            lngPart = rngPrnArray.Cells(i, 2)
            rngPart.Value = lngPart
        
            DoEvents
            
            
            ' set Filename
            sFileName = Left(ThisWorkbook.Name, InStrRev(ThisWorkbook.Name, ".") - 1) & _
                        "_" & lngGroup & "_" & lngPart & ".pdf"
            sFile = Application.DefaultFilePath & "\" & sFileName

            ' Export to PDF
            ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                Filename:=sFile, Quality:=xlQualityStandard, _
                IncludeDocProperties:=True, IgnorePrintAreas:=False, _
                OpenAfterPublish:=False
        End If
    Next
    
End Sub


Anzeige
AW: Formulardruck via VBA in Schlaufe
22.06.2023 19:56:13
Chris Heer
Guten Abend Pappawinni

Das ist ja der Wahnsinn, Besten Dank für deine grossartige Hilfe.
Das kannst dir gross auf die Fahne schreiben.

Wie du jetzt die Schleife programmiert hast, kann ich leider nicht lesen, aber es Funktioniert.
Jetzt kann ich die Tabelle erweitern; Wie du aus deiner Bemerkung festgestellt hast, kann ich jetzt die Tabelle Füllen und erweitern.
Sonst macht das ja wirklich keinen Sinn.

Dafür konnte ich den Default anpassen......

Gruss und guten Abend.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige