Πώς να δημιουργήσετε μια φόρμα αυτόματης εισαγωγής δεδομένων στο Excel VBA

Η χρήση φορμών στο VBA σάς δίνει έναν κενό καμβά για να σχεδιάσετε και να τακτοποιήσετε φόρμες ανάλογα με τις ανάγκες σας ανά πάσα στιγμή. Ας μάθουμε με το Download.vn πώς να δημιουργείτε φόρμες αυτόματης εισαγωγής δεδομένων στο Excel VBA !

Πώς να δημιουργήσετε μια φόρμα αυτόματης εισαγωγής δεδομένων στο Excel VBA

Δημιουργήστε μια φόρμα χρήστη χρησιμοποιώντας το Excel VBA

Ανοίξτε ένα νέο βιβλίο εργασίας του Excel και εκτελέστε μερικά προκαταρκτικά βήματα πριν ξεκινήσετε τη δημιουργία της φόρμας εισαγωγής δεδομένων.

Αποθηκεύστε το βιβλίο εργασίας με το επιθυμητό όνομα, μην ξεχάσετε να αλλάξετε τον τύπο αρχείου σε Βιβλίο εργασίας με δυνατότητα Macro-Enabled του Excel.

Προσθέστε 2 φύλλα σε αυτό το βιβλίο εργασίας με τα ακόλουθα ονόματα:

  1. Φύλλο 1 : Αρχική σελίδα
  2. Φύλλο 2 : Βάση δεδομένων μαθητών

Πώς να δημιουργήσετε μια φόρμα αυτόματης εισαγωγής δεδομένων στο Excel VBA

Φυσικά, μπορείτε να αλλάξετε τα ονόματά τους όπως θέλετε.

Στο Αρχικό φύλλο , προσθέστε ένα κουμπί ελέγχου μακροεντολής φόρμας χρήστη. Μεταβείτε στην καρτέλα Προγραμματιστής > κάντε κλικ στο Κουμπί από την αναπτυσσόμενη λίστα Εισαγωγή . Τοποθετήστε αυτό το κουμπί οπουδήποτε στο υπολογιστικό φύλλο.

Πώς να δημιουργήσετε μια φόρμα αυτόματης εισαγωγής δεδομένων στο Excel VBA

Αφού τοποθετήσετε το κουμπί, μετονομάστε το. Κάντε δεξί κλικ πάνω του > κάντε κλικ στο Νέο για να επισυνάψετε μια μακροεντολή που εμφανίζει τη φόρμα.

Εισαγάγετε τον ακόλουθο κωδικό στο παράθυρο του προγράμματος επεξεργασίας:

Sub Button1_Click()
UserForm.Show
End Sub

Έχοντας έτοιμο το φύλλο αρχικής σελίδας και τη βάση δεδομένων μαθητών , ήρθε η ώρα να σχεδιάσετε τη φόρμα χρήστη. Μεταβείτε στην καρτέλα Προγραμματιστής > κάντε κλικ στην Visual Basic για να ανοίξετε το πρόγραμμα επεξεργασίας . Εναλλακτικά, μπορείτε να πατήσετε ALT+F11 για να ανοίξετε το παράθυρο του προγράμματος επεξεργασίας.

Κάντε κλικ στην καρτέλα Εισαγωγή και επιλέξτε UserForm . Μια φόρμα χρήστη είναι έτοιμη για χρήση. Μια συνοδευτική εργαλειοθήκη ανοίγει με αυτήν τη φόρμα, που περιέχει όλα τα εργαλεία που απαιτούνται για τη σχεδίαση της διάταξης.

Πώς να δημιουργήσετε μια φόρμα αυτόματης εισαγωγής δεδομένων στο Excel VBA

Από αυτήν την εργαλειοθήκη, επιλέξτε Πλαίσιο . Σύρετε το στη φόρμα χρήστη και αλλάξτε το μέγεθός του.

Στο (όνομα) , μπορείτε να αλλάξετε το όνομα αυτού του πλαισίου. Για να εμφανίσετε το όνομα στη διεπαφή, μπορείτε να αλλάξετε το όνομα στη στήλη Λεζάντα .

Στη συνέχεια, επιλέξτε Ετικέτα από την εργαλειοθήκη και εισαγάγετε 2 αυτοκόλλητα σε αυτό το πλαίσιο. Μετονομάστε το πρώτο όνομα σε Αριθμός αίτησης και το δεύτερο όνομα σε αναγνωριστικό μαθητή .

Εφαρμόστε την ίδια διαδικασία μετονομασίας μέσω Λεζάντα στις ιδιότητες . Βεβαιωθείτε ότι έχετε επιλέξει την αντίστοιχη ετικέτα πριν τη μετονομάσετε.

Στη συνέχεια, εισαγάγετε 2 πλαίσια κειμένου στο πλαίσιο αυτοκόλλητων. Θα χρησιμοποιηθούν για την καταγραφή των εισροών των χρηστών. Αλλάξτε τα ονόματα των 2 πλαισίων κειμένου μέσω της στήλης (Όνομα) στις Ιδιότητες ως εξής:

  • Πλαίσιο κειμένου 1 : txtΑριθμός εφαρμογής
  • Πλαίσιο κειμένου2 : txtΑναγνωριστικό σπουδαστή

Σχεδιασμός πλαισίου ενημέρωσης μαθητών

Εισαγάγετε ένα κατακόρυφο πλαίσιο και προσθέστε 10 ετικέτες και 10 πλαίσια κειμένου. Μετονομάστε την ετικέτα ως εξής:

  • Ετικέτα 3 : Όνομα
  • Ετικέτα 4 : Ηλικία
  • Ετικέτα 5 : Διεύθυνση
  • Ετικέτα 6 : Τηλέφωνο
  • Ετικέτα 7 : Πόλη
  • Ετικέτα 8 : Χώρα
  • Ετικέτα 9 : Ημερομηνία γέννησης
  • Label10 : Ταχυδρομικός κώδικας
  • Ετικέτα 11 : Εθνικότητα
  • Ετικέτα 12 : Φύλο

Εισαγάγετε το αντίστοιχο πλαίσιο κειμένου δίπλα σε αυτές τις ετικέτες, εισάγοντας από δύο πλαίσια κουμπιών επιλογής από την εργαλειοθήκη userform δίπλα στην ετικέτα φύλου. Αλλάξτε τα ονόματά τους σε Άνδρας και Γυναίκα (με Προσαρμογή) αντίστοιχα.

Σχεδιάστε αναλυτικό πλαίσιο μαθημάτων

Προσθέστε ένα άλλο πλαίσιο κάθετα και εισαγάγετε 6 αυτοκόλλητα, 6 πλαίσια κειμένου που αντιστοιχούν σε κάθε ετικέτα. Μετονομάστε το αυτοκόλλητο ως εξής:

  • Ετικέτα 13 : Όνομα μαθήματος
  • Ετικέτα 14 : Αναγνωριστικό μαθήματος
  • Label15 : Ημερομηνία έναρξης εγγραφής
  • Label16 : Ημερομηνία λήξης εγγραφής
  • Label17 : Διάρκεια μαθήματος
  • Ετικέτα 18 : Τμήμα

Σχεδιασμός πλαισίου λεπτομερειών πληρωμής

Εισαγάγετε ένα νέο πλαίσιο, προσθέστε μια νέα ετικέτα και μετονομάστε το σε "Θέλετε να ενημερώσετε τα στοιχεία πληρωμής;" Εισαγάγετε 2 κουμπιά επιλογής ; μετονομάστε τους σε Ναι και Όχι .

Ομοίως, προσθέστε ένα νέο πλαίσιο που περιέχει 2 επιπλέον ετικέτες και 2 σύνθετα πλαίσια. Μετονομάστε την ετικέτα ως εξής:

  • Ετικέτα 19 : Η πληρωμή ελήφθη
  • Label20 : Τρόπος πληρωμής

Σχεδιασμός πλακέτας πλοήγησης

Στο τελευταίο πλαίσιο, προσθέστε 3 κουμπιά από την εργαλειοθήκη, που περιέχουν κώδικα για την ανάπτυξη των φορμών. Μετονομάστε τα κουμπιά ως εξής:

  • Κουμπί 1 : Αποθήκευση λεπτομερειών
  • Κουμπί 2 : Διαγραφή φόρμας
  • Κουμπί 3 : Έξοδος

Πώς να δημιουργήσετε μια φόρμα αυτόματης εισαγωγής δεδομένων στο Excel VBA

Γράψτε αυτόματο κωδικό φόρμας: Κουμπί για αποθήκευση πληροφοριών

Κάντε διπλό κλικ στο κουμπί Αποθήκευση λεπτομερειών . Στην επόμενη ενότητα, εισαγάγετε τον ακόλουθο κώδικα:

Private Sub CommandButton2_Click()

‘declare the variables used throughout the codes
Dim sht As Worksheet, sht1 As Worksheet, lastrow As Long

'Add validations to check if character values are being entered in numeric fields.
If VBA.IsNumeric(txtApplicationNo.Value) = False Then
MsgBox "Only numeric values are accepted in the Application Number", vbCritical
Exit Sub
End If

If VBA.IsNumeric(txtStudentID.Value) = False Then
MsgBox "Only numeric values are accepted in the Student ID", vbCritical
Exit Sub
End If

If VBA.IsNumeric(txtAge.Value) = False Then
MsgBox "Only numeric values are accepted in Age", vbCritical
Exit Sub
End If

If VBA.IsNumeric(txtPhone.Value) = False Then
MsgBox "Only numeric values are accepted in Phone Number", vbCritical
Exit Sub
End If

If VBA.IsNumeric(Me.txtCourseID.Value) = False Then
MsgBox "Only numeric values are accepted in Course ID", vbCritical
Exit Sub
End If

'link the text box fields with the underlying sheets to create a rolling database
Set sht = ThisWorkbook.Sheets("Student Database")

'calculate last populated row in both sheets

lastrow = sht.Range("a" & Rows.Count).End(xlUp).Row + 1

'paste the values of each textbox into their respective sheet cells

With sht
.Range("a" & lastrow).Value = txtApplicationNo.Value
.Range("b" & lastrow).Value = txtStudentID.Value
.Range("c" & lastrow).Value = txtName.Value
.Range("d" & lastrow).Value = txtAge.Value
.Range("e" & lastrow).Value = txtDOB.Value
.Range("g" & lastrow).Value = txtAddress.Value
.Range("h" & lastrow).Value = txtPhone.Value
.Range("i" & lastrow).Value = txtCity.Value
.Range("j" & lastrow).Value = txtCountry.Value
.Range("k" & lastrow).Value = txtZip.Value
.Range("l" & lastrow).Value = txtNationality.Value
.Range("m" & lastrow).Value = txtCourse.Value
.Range("n" & lastrow).Value = txtCourseID.Value
.Range("o" & lastrow).Value = txtenrollmentstart.Value
.Range("p" & lastrow).Value = txtenrollmentend.Value
.Range("q" & lastrow).Value = txtcourseduration.Value
.Range("r" & lastrow).Value = txtDept.Value

End With
sht.Activate

'determine gender as per user's input
If optMale.Value = True Then sht.Range("g" & lastrow).Value = "Male"
If optFemale.Value = True Then sht.Range("g" & lastrow).Value = "Female"
'Display a message box, in case the user selects the Yes radio button

If optYes.Value = True Then
MsgBox "Please select the payment details below"
Else:
Exit Sub

End If

End Sub

Επεξήγηση του κώδικα στην αυτοματοποιημένη μορφή:

Τα πλαίσια κειμένου περιλαμβάνουν τιμές κειμένου και αριθμητικές τιμές, επομένως πρέπει να περιορίσετε την εισαγωγή του χρήστη. Ο αριθμός αίτησης, το αναγνωριστικό φοιτητή, η ηλικία, το τηλέφωνο, το αναγνωριστικό μαθήματος και η διάρκεια του μαθήματος θα περιέχουν μόνο αριθμούς, ενώ τα υπόλοιπα θα περιέχουν κείμενο.

Χρησιμοποιώντας την εντολή IF , ο κωδικός ενεργοποιεί ένα αναδυόμενο παράθυρο σφάλματος εάν ο χρήστης εισαγάγει έναν χαρακτήρα ή μια τιμή κειμένου σε οποιοδήποτε αριθμητικό πεδίο.

Επειδή υπάρχει επικύρωση σφάλματος, πρέπει να συνδέσετε τα πλαίσια κειμένου με τα κελιά του φύλλου εργασίας.

Οι μεταβλητές της τελευταίας σειράς υπολογίζουν την τελευταία συμπληρωμένη σειρά και αποθηκεύουν την τιμή μέσα για ευέλικτη χρήση.

Τέλος, αυτές οι τιμές επικολλούνται στο πλαίσιο κειμένου στο συνδεδεμένο φύλλο Excel.

Κωδικοποιήστε τη φόρμα διαγραφής και το κουμπί εξόδου

Στο κουμπί διαγραφής , πρέπει να γράψετε κώδικα που διαγράφει τις τρέχουσες τιμές από τη φόρμα του χρήστη ως εξής:

With Me
.txtApplicationNo.Value = ""
.txtStudentID.Value = ""
..txtName.Value = ""
.txtAge.Value = ""
.txtAddress.Value = ""
.txtPhone.Value = ""
.txtCity.Value = ""
.txtCountry.Value = ""
.txtDOB.Value = ""
.txtZip.Value = ""
.txtNationality.Value = ""
.txtCourse.Value = ""
.txtCourseID.Value = ""
.txtenrollmentstart.Value = ""
.txtenrollmentend.Value = ""
.txtcourseduration.Value = ""
.txtDept.Value = ""
.cmbPaymentMode.Value = ""
.cmbPayment.Value = ""
.optFemale.Value = False
.optMale.Value = False
.optYes.Value = False
.optNo.Value = False

End With

Στο κουμπί εξόδου , εισαγάγετε τον ακόλουθο κωδικό στη φόρμα χρήστη:

Private Sub CommandButton5_Click()
Unload Me
End Sub

Στο τελικό βήμα, πρέπει να εισαγάγετε τα τελευταία κομμάτια κώδικα για να δημιουργήσετε τις αναπτυσσόμενες τιμές για το σύνθετο πλαίσιο (στο πλαίσιο αγοράς).

Private Sub UserForm_Activate()

With cmbPayment
.Clear
.AddItem ""
.AddItem "Yes"
.AddItem "No"
End With
With cmbPaymentMode

.Clear
.AddItem ""
.AddItem "Cash"
.AddItem "Card"
.AddItem "Check"
End With
End Sub

Παρακάτω περιγράφεται ο τρόπος δημιουργίας μιας φόρμας αυτόματης εισαγωγής δεδομένων στο Excel VBA . Ελπίζω το άρθρο να είναι χρήσιμο για εσάς.


Πώς να εισάγετε δεδομένα από το Excel σε μια βάση δεδομένων της Access;

Πώς να εισάγετε δεδομένα από το Excel σε μια βάση δεδομένων της Access;

Μάθετε πώς να αποκτάτε δεδομένα του Excel σε έναν νέο ή υπάρχοντα πίνακα της Access.

Πώς να εξαγάγετε δεδομένα από πίνακες της Microsoft Access σε μορφές .CSV, xlsx και κειμένου;

Πώς να εξαγάγετε δεδομένα από πίνακες της Microsoft Access σε μορφές .CSV, xlsx και κειμένου;

Μάθετε πώς να εξάγετε εύκολα δεδομένα πίνακα Access σε Excel, TXT, XML κ.λπ

Μακροεντολές Microsoft 365 Excel για αρχάριους: Πώς να εγγράψετε και να γράψετε μακροεντολές VBA στα βιβλία εργασίας του Excel 2019;

Μακροεντολές Microsoft 365 Excel για αρχάριους: Πώς να εγγράψετε και να γράψετε μακροεντολές VBA στα βιβλία εργασίας του Excel 2019;

Μάθετε πώς να καταγράφετε, να γράφετε και να εισάγετε βασικές μακροεντολές VBA σε βιβλία εργασίας του Excel και να αυτοματοποιείτε τις εργασίες σας.

Πώς να αποκτήσετε πρόσβαση και να ανοίξετε ένα αρχείο Excel 97/2003 .xls σε Excel 2016, 2019 και 365;

Πώς να αποκτήσετε πρόσβαση και να ανοίξετε ένα αρχείο Excel 97/2003 .xls σε Excel 2016, 2019 και 365;

Μάθετε πώς να ανοίξετε παλιά αρχεία Excel με το Excel 365 (2016/2019) με δεδομένα και βήματα για να ξεπεράσετε τα προβλήματα συμβατότητας.

Πώς να κάνετε το Office 2016 ή 2019 ή 365 την προεπιλεγμένη εφαρμογή του Microsoft Office;

Πώς να κάνετε το Office 2016 ή 2019 ή 365 την προεπιλεγμένη εφαρμογή του Microsoft Office;

Το Office 365 δεν εμφανίζεται ως προεπιλεγμένη εφαρμογή για έγγραφα και υπολογιστικά φύλλα; Μάθετε πώς να το ορίσετε για το Word και το Excel 2019 και 2016.

Οδηγίες για τη χρήση της συνάρτησης ABS για τον υπολογισμό της απόλυτης τιμής στο Excel

Οδηγίες για τη χρήση της συνάρτησης ABS για τον υπολογισμό της απόλυτης τιμής στο Excel

Οδηγίες για τη χρήση της συνάρτησης ABS για τον υπολογισμό της απόλυτης τιμής στο Excel Η συνάρτηση ABS χρησιμοποιείται για τον υπολογισμό της απόλυτης τιμής ενός αριθμού ή ενός υπολογισμού. Η χρήση της λειτουργίας ABS είναι αρκετά απλή

Οδηγίες για τη σύνταξη του ανώτερου και του κατώτερου ευρετηρίου στο Excel

Οδηγίες για τη σύνταξη του ανώτερου και του κατώτερου ευρετηρίου στο Excel

Οδηγίες για τη σύνταξη του ανώτερου και του κατώτερου ευρετηρίου στο Excel. Συχνά πρέπει να επεξεργαστείτε μαθηματικούς τύπους στο Excel, αλλά αντιμετωπίζετε δυσκολίες με τις εκφράσεις.

Πώς να αριθμήσετε σελίδες χωρίς να ξεκινήσετε από το 1 στο Excel

Πώς να αριθμήσετε σελίδες χωρίς να ξεκινήσετε από το 1 στο Excel

Πώς να αριθμήσετε σελίδες χωρίς να ξεκινήσετε από το 1 στο Excel. Η αρίθμηση σελίδων στο Excel είναι αρκετά απλή, αλλά η αρίθμηση σελίδων που ξεκινούν από έναν αριθμό διαφορετικό από το 1 είναι δύσκολη.

Οδηγίες για την εκτύπωση επαναλαμβανόμενων τίτλων στο Excel

Οδηγίες για την εκτύπωση επαναλαμβανόμενων τίτλων στο Excel

Οδηγίες για επανειλημμένη εκτύπωση τίτλων στο Excel Για πίνακες Excel με πολλές εκτυπωμένες σελίδες, οι άνθρωποι συχνά ρυθμίζουν την επαναλαμβανόμενη εκτύπωση τίτλων για να αποφύγουν τη σύγχυση με το υπολογιστικό φύλλο.

Πώς να χρησιμοποιήσετε τις συναρτήσεις μέτρησης Count, Counta, Countif, Countifs στο Excel

Πώς να χρησιμοποιήσετε τις συναρτήσεις μέτρησης Count, Counta, Countif, Countifs στο Excel

Πώς να χρησιμοποιήσετε τις συναρτήσεις μέτρησης Count, Counta, Countif, Countifs στο Excel Οι συναρτήσεις μέτρησης στο Excel χωρίζονται σε πολλούς τύπους, οι περισσότερες από αυτές τις συναρτήσεις είναι πολύ εύχρηστες για μέτρηση.