Excel VBA για τη δημιουργία πίνακα από εύρος (6 παραδείγματα)

  • Μοιραστείτε Αυτό
Hugh West

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

Κατεβάστε το βιβλίο ασκήσεων

Μπορείτε να κατεβάσετε το τετράδιο εργασιών και να εξασκηθείτε μαζί τους.

Δημιουργία πίνακα από Range.xlsm

6 παραδείγματα του Excel VBA για τη δημιουργία πίνακα από εύρος

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

Ας υποθέσουμε ότι έχουμε ένα απλό σύνολο δεδομένων που περιέχει κάποια στοιχεία στη στήλη B , η ποσότητα των στοιχείων αυτών στη στήλη C , και τις συνολικές πωλήσεις για κάθε είδος στη στήλη D Τώρα, θέλουμε να μετατρέψουμε το εύρος δεδομένων σε πίνακα. Ας παρουσιάσουμε διάφορα παραδείγματα και οδηγίες βήμα προς βήμα για τη δημιουργία ενός πίνακα από εύρος δεδομένων. B4:D9 με το Excel VBA.

Χρήση ListObjects.Add για να μετατρέψετε μια περιοχή σε πίνακα του Excel. Το αντικείμενο Spreadsheet έχει ένα χαρακτηριστικό ListObjects . ListObjects έχει μια τεχνική που ονομάζεται Προσθέστε Τα κριτήρια για .Add έχουν ως εξής.

expression .Add(SourceType, Source, LinkSource, HasHeaders,Destination)

Και, χρησιμοποιήστε το SourceType xlSrcRange .

1. Excel VBA για τη δημιουργία πίνακα από εύρος τιμών

Με Excel VBA , οι χρήστες μπορούν εύκολα να χρησιμοποιήσουν τον κώδικα που λειτουργεί ως μενού του excel από την κορδέλα. Για να χρησιμοποιήσετε το VBA κώδικα για τη δημιουργία ενός πίνακα από το εύρος, ας ακολουθήσουμε τη διαδικασία παρακάτω.

ΒΗΜΑΤΑ:

  • Πρώτον, μεταβείτε στο Προγραμματιστής από την κορδέλα.
  • Δεύτερον, από το Κωδικός κατηγορία, κάντε κλικ στο Visual Basic για να ανοίξετε το Visual Basic Editor . ή πατήστε Alt + F11 για να ανοίξετε το Visual Basic Editor .
  • Αντί να το κάνετε αυτό, μπορείτε απλά να κάνετε δεξί κλικ στο φύλλο εργασίας σας και να μεταβείτε στην επιλογή Προβολή κωδικού Αυτό θα σας μεταφέρει επίσης στο Visual Basic Editor .

  • Αυτό θα εμφανιστεί στο Visual Basic Editor όπου γράφουμε τους κώδικες μας για να δημιουργήσουμε έναν πίνακα από το εύρος.
  • Τρίτον, κάντε κλικ στο Ενότητα από το Εισαγωγή αναπτυσσόμενη γραμμή μενού.

  • Αυτό θα δημιουργήσει ένα Ενότητα στο βιβλίο εργασίας σας.
  • Και, αντιγράψτε και επικολλήστε το VBA κώδικα που φαίνεται παρακάτω.

Κωδικός VBA:

 Sub Create_Table() Sheet1.ListObjects.Add(xlSrcRange, Range("B4:D9"), , xlYes).Name = "Table1" End Sub 
  • Μετά από αυτό, εκτελέστε τον κώδικα κάνοντας κλικ στο κουμπί RubSub ή πατώντας τη συντόμευση πληκτρολογίου F5 .

Δεν χρειάζεται να αλλάξετε τον κώδικα. Το μόνο που μπορείτε να κάνετε είναι να αλλάξετε το εύρος σύμφωνα με τις απαιτήσεις σας.

  • Και, τέλος, ακολουθώντας τα βήματα θα δημιουργήσετε έναν πίνακα από το εύρος B4:D9 .

Επεξήγηση κώδικα VBA

 Sub Create_Table() 

Υπο είναι ένα μέρος του κώδικα που χρησιμοποιείται για να διεκπεραιώσει την εργασία στον κώδικα, αλλά δεν θα επιστρέψει καμία τιμή. Είναι επίσης γνωστό ως υποδιαδικασία. Έτσι ονομάζουμε τη διαδικασία μας Create_Table() .

 Sheet1.ListObjects.Add(xlSrcRange, Range("B4:D9"), , xlYes).Name = "Table1" 

Αυτή είναι η κύρια γραμμή κώδικα με την οποία το εύρος μετατρέπεται σε πίνακα. Όπως ήδη γνωρίζουμε ότι ListObjects.Add για να μετατρέψουμε ένα εύρος σε πίνακα του Excel. Και χρησιμοποιούμε xlSrcRange Επίσης, δηλώνουμε το εύρος της περιοχής μας Εύρος("B4:D9") Και τέλος, ονομάζουμε τον πίνακα μας ως Πίνακας1 .

 End Sub 

Αυτό θα τερματίσει τη διαδικασία.

Διαβάστε περισσότερα: Πώς να ενημερώσετε το εύρος του πίνακα Pivot (5 κατάλληλες μέθοδοι)

2. Κατασκευή πίνακα από εύρος χρησιμοποιώντας το Excel VBA

Ας δούμε ένα άλλο παράδειγμα για την κατασκευή ενός πίνακα από εύρος χρησιμοποιώντας το Excel VBA.

ΒΗΜΑΤΑ:

  • Πρώτον, μεταβείτε στο Ανάπτυξη r από την κορδέλα.
  • Δεύτερον, κάντε κλικ στο Visual Basic για να ανοίξετε το Visual Basic Editor .
  • Ένας άλλος τρόπος για να ανοίξετε το Visual Basic Editor είναι απλά να πατήσετε Alt + F11 .
  • Ή, κάντε δεξί κλικ στο φύλλο και, στη συνέχεια, επιλέξτε Προβολή κωδικού .
  • Στη συνέχεια, μεταβείτε στο Εισαγωγή και επιλέξτε Ενότητα από το αναπτυσσόμενο μενού.
  • Και, αυτό θα ανοίξει το παράθυρο visual basic.
  • Μετά από αυτό, αντιγράψτε και επικολλήστε το Κώδικας VBA παρακάτω.

Κωδικός VBA:

 Sub Generate_Table() Dim tb2 As Range Dim wsht As Worksheet Set tb2 = Range("B4").CurrentRegion Set wsht = ActiveSheet ws.ListObjects.Add(SourceType:=xlSrcRange, Source:=tb2).Name = "Table2" End Sub 
  • Περαιτέρω, πατήστε το Πλήκτρο F5 ή κάντε κλικ στο Run Sub για να εκτελέσετε τον κώδικα.

  • Και, θα λάβετε το αποτέλεσμα όπως φαίνεται στο Μέθοδος 1 .

Επεξήγηση κώδικα VBA

 Dim tb2 As Range Dim wsht As Worksheet 

Το DIM δήλωση στο VBA αναφέρεται στο " δηλώνουν, " και πρέπει να χρησιμοποιηθεί για να δηλώσουμε μια μεταβλητή. Έτσι, δηλώνουμε το εύρος μας σε tb2 και φύλλο εργασίας για να ws .

 Set tb2 = Range("B4").CurrentRegion Set wsht = ActiveSheet 

Το VBA Set μας επιτρέπει απλώς να αποφύγουμε να πληκτρολογούμε ξανά και ξανά την περιοχή που θέλουμε να επιλέξουμε κατά την εκτέλεση του κώδικα. Έτσι, ορίζουμε την περιοχή μας στην τρέχουσα περιοχή και το φύλλο εργασίας μας στο ενεργό φύλλο εργασίας.

 wsht.ListObjects.Add(SourceType:=xlSrcRange, Source:=tb2).Name = "Table2" 

Με αυτή τη γραμμή κώδικα, δημιουργούμε τον πίνακα από το εύρος και ονομάζουμε τον πίνακα μας Πίνακας2 .

Διαβάστε περισσότερα: Πώς να χρησιμοποιήσετε έναν πίνακα του Excel με VBA (9 πιθανοί τρόποι)

3. Δημιουργία πίνακα από περιοχή με VBA στο Excel

Ας δούμε ένα άλλο παράδειγμα χρήσης του Excel VBA για τη δημιουργία ενός πίνακα από ένα εύρος.

ΒΗΜΑΤΑ:

  • Αρχικά, επιλέξτε ολόκληρο το εύρος που θέλετε να μετατρέψετε σε πίνακα.
  • Δεύτερον, κάντε κλικ στο Προγραμματιστής στην καρτέλα της κορδέλας.
  • Τρίτον, ξεκινήστε το Visual Basic Editor κάνοντας κλικ στο Visual Basic .
  • Εναλλακτικά, μπορείτε να αποκτήσετε πρόσβαση στο Visual Basic Editor πατώντας Alt + F11 .
  • Ή, δεξί κλικ στο στο φύλλο και επιλέξτε Προβολή κωδικού από το μενού.
  • Στη συνέχεια, επιλέξτε το Ενότητα από το αναπτυσσόμενο πλαίσιο κάτω από Εισαγωγή .
  • Και θα εμφανιστεί το παράθυρο visual basic.
  • Γράψτε τον κώδικα εκεί.

Κωδικός VBA:

 Sub Create_Table3() Dim r As Range Dim wsht As Worksheet Dim tb3 As ListObject Set r = Selection.CurrentRegion Set wsht = ActiveSheet Set tb3 = wsht.ListObjects.Add(SourceType:=xlSrcRange, Source:=r, XlListObjecthasheaders:=x1Yes) End Sub 
  • Τέλος, πατήστε το πλήκτρο Πλήκτρο F5 για να εκτελέσετε τον κώδικα.

  • Και, αυτό θα δημιουργήσει έναν πίνακα από το εύρος δεδομένων όπως το πήραμε στο Μέθοδος 1 .

Διαβάστε περισσότερα: Πώς να δημιουργήσετε έναν πίνακα στο Excel (με προσαρμογή)

Παρόμοιες αναγνώσεις

  • Υπολογισμένο άθροισμα πεδίου διαιρεμένο με τον αριθμό στον πίνακα Pivot
  • Πώς να απεικονίσετε τη σχετική κατανομή συχνότητας στο Excel
  • Ομαδοποίηση πίνακα Pivot του Excel ανά εβδομάδα (3 κατάλληλα παραδείγματα)
  • [Fix] Δεν είναι δυνατή η ομαδοποίηση ημερομηνιών σε πίνακα Pivot: 4 πιθανές λύσεις
  • Πώς να δημιουργήσετε έναν πίνακα αποσβέσεων στο Excel (4 μέθοδοι)

4. Εφαρμογή της VBA για τη δημιουργία δυναμικού πίνακα από εύρος τιμών

Ας ρίξουμε μια ματιά σε έναν άλλο τρόπο δημιουργίας ενός πίνακα από ένα εύρος χρησιμοποιώντας το Excel VBA.

ΒΗΜΑΤΑ:

  • Για να ξεκινήσετε, ανοίξτε την κορδέλα και επιλέξτε το Προγραμματιστής επιλογή.
  • Στη συνέχεια, για να αποκτήσετε πρόσβαση στο Visual Basic Editor , κάντε κλικ στο Visual Basic .
  • Πιέζοντας Alt + F11 θα εμφανίσει επίσης το Visual Basic Editor .
  • Εναλλακτικά, δεξί κλικ στο το φύλλο και επιλέξτε Προβολή κωδικού από το μενού που εμφανίζεται.
  • Τώρα, από το Εισαγωγή drop-down επιλογή, επιλέξτε Ενότητα .
  • Στη συνέχεια, αντιγράψτε και επικολλήστε το VBA κώδικα που ακολουθεί.

Κωδικός VBA:

 Sub Create_Dynamic_Table1() Dim tbOb As ListObject Dim TblRng As Range With Sheets("Example4") lLastRow = .Cells(.Rows.Count, "A").End(xlUp).Row lLastColumn = .Cells(1, .Columns.Count).End(xlToLeft).Column Set TblRng = .Range("A1", .Cells(lLastRow, lLastColumn)) Set tbOb = .ListObjects.Add(xlSrcRange, TblRng, , xlYes) tbOb.Name = "DynamicTable1" tbOb.TableStyle = "TableStyleMedium14" End With End With End WithΥπο 
  • Εκτελέστε τον κώδικα πατώντας το πλήκτρο F5 κλειδί.

  • Όπως απεικονίζεται στο Μέθοδος 1 το τραπέζι θα κατασκευαστεί από την περιοχή.

Επεξήγηση κώδικα VBA

 Sub Create_Dynamic_Table1() 

Αυτή η γραμμή υποδεικνύει το όνομα της υποδιαδικασίας.

 Dim tbOb As ListObject Dim TblRng As Range 

Αυτή η δίγραμμη γραμμή χρησιμοποιείται για τη δήλωση μεταβλητών.

 Με Φύλλα("Example4") 

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

 lLastRow = .Cells(.Rows.Count, "A").End(xlUp).Row lLastColumn = .Cells(1, .Columns.Count).End(xlToLeft).Column 

Αυτά είναι για να βρείτε αντίστοιχα την τελευταία γραμμή και την τελευταία στήλη.

 Set TblRng = .Range("A1", .Cells(lLastRow, lLastColumn)) 

Εύρος για τη δημιουργία του πίνακα.

 Set tbOb = .ListObjects.Add(xlSrcRange, TblRng, , xlYes) 

Δημιουργήστε έναν πίνακα στο προαναφερθέν εύρος.

 tbOb.Name = "DynamicTable1" 

Καθορισμός ονόματος πίνακα

 tbOb.TableStyle = "TableStyleMedium14" 

Καθορίστε το στυλ πίνακα.

Διαβάστε περισσότερα: Δημιουργία πίνακα στο Excel χρησιμοποιώντας συντόμευση (8 μέθοδοι)

5. Δημιουργία δυναμικού πίνακα από εύρος

Τώρα, ρίξτε μια ματιά σε μια άλλη μέθοδο VBA του Excel για τη δημιουργία ενός πίνακα από μια περιοχή.

ΒΗΜΑΤΑ:

  • Για να ξεκινήσετε, ανοίξτε την κορδέλα και επιλέξτε Προγραμματιστής από το αναπτυσσόμενο μενού.
  • Στη συνέχεια επιλέξτε Visual Basic για να ανοίξετε το Visual Basic Editor .
  • Το Visual Basic Editor μπορείτε επίσης να έχετε πρόσβαση πατώντας το πλήκτρο Alt + F11 .
  • Εναλλακτικά, μπορείτε να δεξί κλικ στο το φύλλο και επιλέξτε Προβολή κωδικού από το αναδυόμενο μενού.
  • Μετά από αυτό, επιλέξτε Ενότητα από το Εισαγωγή αναπτυσσόμενο μενού.
  • Στη συνέχεια, αντιγράψτε και επικολλήστε τον ακόλουθο κώδικα VBA.

Κωδικός VBA:

 Sub Create_Dynamic_Table2() Dim tbObj As ListObject Dim TblRng As Range With Sheets("Example5") .Range("A1").Select Selection.CurrentRegion.Select Set tbObj = .ListObjects.Add(xlSrcRange, Selection, , xlYes) tbObj.Name = "DynamicTable2" tbObj.TableStyle = "TableStyleMedium15" End With End With End Sub 
  • Τέλος, εκτελέστε τον κώδικα πατώντας F5 στο πληκτρολόγιό σας και βλέπετε το αποτέλεσμα στο φύλλο εργασίας σας.

  • Και, όπως καταδεικνύεται στο Μέθοδος 1 's, ο πίνακας θα κατασκευαστεί από το εύρος.

Διαβάστε περισσότερα: Πώς να κάνετε τους πίνακες του Excel να φαίνονται καλοί (8 αποτελεσματικές συμβουλές)

6. Χρήση του Excel VBA για τη δημιουργία δυναμικού πίνακα

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

ΒΗΜΑΤΑ:

  • Στην αρχή, πηγαίνετε στο Προγραμματιστής tab>, Visual Basic >, Εισαγωγή >, Ενότητα .
  • Ή, δεξί κλικ στο στο φύλλο εργασίας θα ανοίξει ένα παράθυρο. Από εκεί πηγαίνετε στο Προβολή κωδικού .
  • Και, αυτό θα σας μεταφέρει στο Visual Basic Editor πεδίο, όπου μπορούμε να γράψουμε μακροεντολές VBA.
  • Από την άλλη πλευρά, πατώντας Alt + F11 θα ανοίξει επίσης το Visual Basic Editor .
  • Μετά από αυτό, πληκτρολογήστε το VBA κωδικός.

Κωδικός VBA:

 Sub Create_Dynamic_Table3() Dim tableObj As ListObject Dim TblRng As Range With Sheets("Example6") lLastRow = .UsedRange.Rows.Count lLastColumn = .UsedRange.Columns.Count Set TblRng = .Range("A1", .Cells(lLastRow, lLastColumn)) Set tableObj = .ListObjects.Add(xlSrcRange, TblRng, , xlYes) tableObj.Name = "DynamicTable3" tableObj.TableStyle = "TableStyleMedium16" End With End With End Sub 
  • Και, εκτελέστε τον κώδικα για να δείτε το αποτέλεσμα πατώντας το πλήκτρο Πλήκτρο F5 .

  • Και, ο πίνακας θα δημιουργηθεί από το εύρος όπως φαίνεται στην εικόνα του Μέθοδος 1 .

Διαβάστε περισσότερα: Πώς να δημιουργήσετε έναν πίνακα στο Excel με δεδομένα (5 τρόποι)

Συμπέρασμα

Οι παραπάνω μέθοδοι θα σας βοηθήσουν να δημιουργήσετε έναν πίνακα από εύρος στο Excel. Ελπίζω ότι αυτό θα σας βοηθήσει! Αν έχετε ερωτήσεις, προτάσεις ή σχόλια, παρακαλούμε ενημερώστε μας στο τμήμα σχολίων. Ή μπορείτε να ρίξετε μια ματιά στα άλλα άρθρα μας στην ενότητα ExcelWIKI.com blog!

Ο Hugh West είναι ένας εξαιρετικά έμπειρος εκπαιδευτής και αναλυτής του Excel με πάνω από 10 χρόνια εμπειρίας στον κλάδο. Είναι κάτοχος πτυχίου Λογιστικής και Χρηματοοικονομικής και μεταπτυχιακού στη Διοίκηση Επιχειρήσεων. Ο Hugh έχει πάθος για τη διδασκαλία και έχει αναπτύξει μια μοναδική προσέγγιση διδασκαλίας που είναι εύκολο να ακολουθηθεί και να κατανοηθεί. Οι εξειδικευμένες γνώσεις του στο Excel έχουν βοηθήσει χιλιάδες φοιτητές και επαγγελματίες παγκοσμίως να βελτιώσουν τις δεξιότητές τους και να διαπρέψουν στην καριέρα τους. Μέσω του ιστολογίου του, ο Hugh μοιράζεται τις γνώσεις του με τον κόσμο, προσφέροντας δωρεάν μαθήματα Excel και διαδικτυακή εκπαίδευση για να βοηθήσει άτομα και επιχειρήσεις να αξιοποιήσουν πλήρως τις δυνατότητές τους.