In diesem Artikel erfahren Sie, wie Sie den Seriendruck mithilfe der VBA in Microsoft Excel automatisieren.
Seriendruck: - Dies ist die Quelle zum Zusammenführen der Dateninformationen in Text und dann zum Drucken des Dokuments. Um einen solchen Vorgang durchzuführen, verwenden wir Microsoft Word.
Lassen Sie uns mit einer einfachen Übung verstehen:
Wir haben ein Briefformat im Berichtsblatt und möchten den Seriendruck über VBA anwenden, in dem wir auch die Briefdetails ändern möchten.
Wir haben 2 Blätter. 1 Blatt enthält Daten mit Angaben, an wen wir Briefe geben möchten. In den ersten Daten enthält Spalte A Name, Spalte B enthält Straßenadresse, Spalte C enthält Stadt, Spalte D Region und Spalte E und Spalte F enthalten die Postleitzahl. Es gibt eine Befehlsschaltfläche zum Verschieben im Berichtsblatt.
2nd Blatt hat das Buchstabenformat mit 2 Befehlsschaltflächen; eine Schaltfläche zum Verschieben auf dem Datenblatt und die zweite Befehlsschaltfläche ist für den Seriendruck zu arbeiten
Zuerst schreiben wir den VBA-Code für die Befehlsschaltfläche von Main Data. Wir müssen die unten angegebenen Schritte befolgen:-
- Zuerst werden wir die Befehlsschaltfläche in das Arbeitsblatt einfügen.
- Wechseln Sie zur Registerkarte Entwickler und fügen Sie dann die Befehlsschaltfläche von Activexcontrol ein.
- Benennen Sie die Befehlsschaltfläche in den Namen "Buchstabe" um und weisen Sie nun das unten erwähnte Makro zu:
Privates Sub Main_data_Click()
Arbeitsblätter("Bericht").Aktivieren
Reichweite("A19").Show
End Sub
Jetzt fügen wir die zweite Befehlsschaltfläche in das Berichtsblatt ein und weisen das Makro zum Verschieben auf dem ersten Blatt zu. Wir müssen die unten angegebenen Schritte befolgen:-
- Benennen Sie die Befehlsschaltfläche in den Namen "Daten" um und weisen Sie das unten genannte Makro zu:
Private Sub CommandButton2_Click()
Worksheets("Main_Data").Aktivieren
Bereich("A1").Anzeigen
End Sub
Jetzt schreiben wir den Hauptcode für den Seriendruck, indem wir die folgenden Schritte ausführen:
Fügen Sie die Befehlsschaltfläche ein und benennen Sie sie in "Briefdruck" um und weisen Sie dann den unten genannten Code zu:
Private Sub CommandButton1_Click()
Dim StartrowAs Integer, lastrow As Integer
Dim MsgAs String
Dim TotalrecordsAs String
Dim Name As String, Street_AddressAs String, Stadt As String, Region As String, Land As String, Postal As String
Totalrecords = "=counta(Main_Data!A:A)"
Range("L1") = Totalrecords
Mein Datum als Datum dimmen
Set WRP = Sheets("Bericht")
mydate = Datum
WRP.Range("A9") = mydate
WRP.Range("A9").NumberFormat = "[$-F800]dddd,mmmm,dd,yyyy"
WRP.Range("A9").HorizontalAlignment = xlLeft
Startrow = InputBox("Geben Sie den ersten zu druckenden Datensatz ein.")
lastrow = InputBox("Geben Sie den letzten zu druckenden Datensatz ein.")
Wenn Startreihe>letzte Reihe Dann
Msg = "ERROR" &vbCrLf& "Startzeile muss kleiner als letzte Zeile sein"
Msgbox Msg, vbCritical, "ExcelTip"
Ende Wenn
For i = Startrow To lastrow
name = Sheets("Main_data").Cells(i, 1)
Street_Address = Sheets("Main_data").Cells(i, 2)
city = Sheets("Main_data").Cells(i, 3)
region = Sheets("Main_data").Cells(i, 4)
country = Sheets("Main_data").Cells(i, 5)
postal = Sheets("Main_data").Cells(i, 6)
Sheets("Report").Range("A7") = Name &vbCrLf&Street_Address&vbCrLf& Stadt & Region & Land &vbCrLf& Postal
Sheets("Bericht").Range("A11") = "Lieber" & " " & Name & ","
CheckBox1 = Wahr
Wenn CheckBox1 Dann
ActiveSheet.PrintPreview
Anders
ActiveSheet.PrintOut
Ende Wenn
Als nächstes
End Sub
Code-Erklärung: - Zuerst definieren wir die Variablen, dann definieren wir das Datum und das Datumsformat, dann definieren wir die letzte Zeile und die Anfangszeile. Dann haben wir eine Nachrichtenbox zum Senden der Nachricht erstellt. Dann definieren wir die Daten und den Bereich, die wir in Buchstaben erfassen möchten.
- Um den Code auszuführen, drücken Sie die Taste F5 auf der Tastatur.
- Dann müssen Sie den ersten Aufnahmepunkt eingeben. Danach erhalten Sie eine neue Meldungsbox, um den letzten Punkteintrag einzugeben.
- Und dann erhalten Sie das unten gezeigte Dokument
- Der Brief wird entsprechend den genannten Details in den Hauptdaten aktualisiert.
Auf diese Weise können wir den Seriendruck über VBA in Microsoft Excel automatisieren.