Σε αυτό το άρθρο, θα μάθουμε πώς να αυτοματοποιήσουμε τη συγχώνευση αλληλογραφίας χρησιμοποιώντας το VBA στο Microsoft Excel.
Συγχώνευση αλληλογραφίας: - Αυτή είναι η πηγή για τη συγχώνευση των δεδομένων των δεδομένων σε κείμενο και στη συνέχεια εκτύπωση του εγγράφου. Για να εκτελέσουμε μια τέτοια λειτουργία, χρησιμοποιούμε το Microsoft Word.
Ας καταλάβουμε με μια απλή άσκηση:-
Έχουμε μια μορφή επιστολής στο φύλλο αναφοράς και θέλουμε να εφαρμόσουμε τη συγχώνευση αλληλογραφίας μέσω VBA στην οποία θέλουμε να αλλάξουμε και τα στοιχεία του γράμματος.
Έχουμε 2 φύλλα. 1 φύλλο περιέχει δεδομένα με λεπτομέρειες στους οποίους θέλουμε να δώσουμε γράμματα. Στα πρώτα δεδομένα, η στήλη Α περιέχει όνομα, η στήλη Β περιέχει διεύθυνση, η στήλη Γ περιέχει πόλη, η στήλη περιοχή D και η στήλη Ε και η στήλη F περιέχουν ταχυδρομικό ταχυδρομείο. Υπάρχει ένα κουμπί εντολών για μετακίνηση στο φύλλο αναφοράς.
2nd Το φύλλο έχει τη μορφή γράμματος με 2 κουμπιά εντολών. ένα κουμπί για να μετακινηθείτε στο φύλλο δεδομένων και το δεύτερο κουμπί εντολής είναι να λειτουργήσει για συγχώνευση αλληλογραφίας
Πρώτον, θα γράψουμε τον κωδικό VBA για το κουμπί εντολών των Κύριων Δεδομένων. Πρέπει να ακολουθήσουμε τα παρακάτω βήματα:-
- Αρχικά θα εισάγουμε το κουμπί εντολών στο φύλλο εργασίας.
- Μεταβείτε στην καρτέλα Προγραμματιστής και, στη συνέχεια, εισαγάγετε το κουμπί εντολών από το Activexcontrol.
- Μετονομάστε το κουμπί εντολής με το όνομα "Letter" και τώρα εκχωρήστε την παρακάτω μακροεντολή:-
Private Sub Main_data_Click ()
Φύλλα εργασίας ("Αναφορά"). Ενεργοποιήστε
Εύρος ("A19"). Εμφάνιση
Τέλος υπο
Τώρα, θα εισάγουμε το δεύτερο κουμπί εντολών στο φύλλο αναφοράς και θα αναθέσουμε στη μακροεντολή να μετακινηθεί στο πρώτο φύλλο. Πρέπει να ακολουθήσουμε τα παρακάτω βήματα:-
- Μετονομάστε το κουμπί εντολής με το όνομα "Δεδομένα" και εκχωρήστε την παρακάτω μακροεντολή:-
Private Sub CommandButton2_Click ()
Φύλλα εργασίας ("Main_Data"). Ενεργοποιήστε
Εύρος ("A1"). Εμφάνιση
Τέλος υπο
Τώρα θα γράψουμε τον κύριο κωδικό για συγχώνευση αλληλογραφίας ακολουθώντας τα παρακάτω βήματα:-
Εισαγάγετε το κουμπί εντολής και μετονομάστε το σε "Letter Print" και, στη συνέχεια, εκχωρήστε τον παρακάτω κωδικό:-
Private Sub CommandButton1_Click ()
Dim StartrowAs Integer, lastrow As Integer
Dim MsgAs String
Dim TotalrecordsAs String
Dim name As String, Street_AddressAs String, city As String, region As String, country As String, postal As String
Totalrecords = "= counta (Main_Data! A: A)"
Εύρος ("L1") = Συνολικές εγγραφές
Dim mydate As Date
Ορισμός WRP = Φύλλα ("Αναφορά")
mydate = Ημερομηνία
WRP.Range ("A9") = mydate
WRP.Range ("A9"). NumberFormat = "[$ -F800] ηηη, μμμμ, ηη, εεεε"
WRP.Range ("A9"). HorizontalAlignment = xlLeft
Startrow = InputBox ("Εισαγάγετε την πρώτη εγγραφή για εκτύπωση.")
lastrow = InputBox ("Εισαγάγετε την τελευταία εγγραφή για εκτύπωση.")
Αν Startrow> lastrow Τότε
Msg = "ERROR" & vbCrLf & "Η γραμμή εκκίνησης πρέπει να είναι μικρότερη από την τελευταία σειρά"
Msgbox Msg, vbCritical, "ExcelTip"
Τέλος εαν
Για i = Startrow To lastrow
όνομα = Φύλλα ("Κύρια_δεδομένα"). Κελιά (i, 1)
Street_Address = Φύλλα ("Κύρια_δεδομένα"). Κελιά (i, 2)
πόλη = Φύλλα ("Κύρια_δεδομένα"). Κελιά (i, 3)
περιοχή = Φύλλα ("Κύρια_δεδομένα"). Κελιά (i, 4)
country = Sheets ("Main_data"). Κελιά (i, 5)
ταχυδρομική = Φύλλα ("Κύρια_δεδομένα"). Κελιά (i, 6)
Φύλλα ("Αναφορά"). Εύρος ("A7") = όνομα & vbCrLf & Street_Address & vbCrLf & πόλη & περιοχή & χώρα & vbCrLf & ταχυδρομικά
Φύλλα ("Αναφορά"). Εύρος ("A11") = "Αγαπητέ" & "" & όνομα & ","
CheckBox1 = True
Αν CheckBox1 Τότε
ActiveSheet.PrintPreview
Αλλού
ActiveSheet.PrintOut
Τέλος εαν
Επόμενο i
Τέλος υπο
Επεξήγηση κώδικα: - Αρχικά, θα ορίσουμε τις μεταβλητές, στη συνέχεια θα ορίσουμε τη μορφή ημερομηνίας και ημερομηνίας, στη συνέχεια θα ορίσουμε την τελευταία γραμμή και τη γραμμή έναρξης. Στη συνέχεια, έχουμε δημιουργήσει πλαίσιο μηνυμάτων για τη μετάδοση του μηνύματος. Στη συνέχεια, θα ορίσουμε τα δεδομένα και το εύρος που θέλουμε να αποτυπώσουμε με γράμματα.
- Για να εκτελέσετε τον κωδικό, πατήστε το πλήκτρο F5 στο πληκτρολόγιο.
- Στη συνέχεια, πρέπει να εισαγάγετε το πρώτο σημείο εγγραφής. Μετά από αυτό, θα λάβετε νέο πλαίσιο μηνυμάτων για να εισαγάγετε την τελευταία εγγραφή σημείου.
- Και, στη συνέχεια, θα λάβετε το παρακάτω έγγραφο που εμφανίζεται
- Η επιστολή θα ενημερωθεί σύμφωνα με τις αναφερόμενες λεπτομέρειες στα κύρια δεδομένα.
Αυτός είναι ο τρόπος με τον οποίο μπορούμε να αυτοματοποιήσουμε τη συγχώνευση αλληλογραφίας μέσω VBA στο Microsoft Excel.