Εισαγωγή στηλών VBA | Πώς να εισαγάγετε στήλη στο φύλλο εργασίας του Excel με VBA;

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

Εισαγωγή στηλών στο Excel χρησιμοποιώντας VBA

Ως μέρος του κώδικα VBA, ενδέχεται να χρειαστεί να εισαγάγουμε μερικές στήλες στο δελτίο δεδομένων μας για να ταιριάζει στις ανάγκες μας. Η εισαγωγή στήλης είναι το εύκολο πλήκτρο συντόμευσης στο φύλλο εργασίας πατώντας Ctrl +, αλλά πώς να εισαγάγετε μια νέα στήλη μέσω κώδικα VBA. Σε αυτό το άρθρο σχετικά με το "VBA Insert Column", θα σας δείξουμε τη διαδικασία προσθήκης στηλών στο excel και θα σας δείξουμε διαφορετικά παραδείγματα σεναρίων.

Πώς να εισαγάγετε στήλες στο φύλλο εργασίας του Excel χρησιμοποιώντας το VBA;

Μπορούμε να εισάγουμε στήλες στο VBA χρησιμοποιώντας την ιδιότητα COLUMNS και το αντικείμενο RANGE. Πρέπει να γιατί χρειαζόμαστε στήλες και αντικείμενα εύρους για να εισάγουμε μια νέα στήλη.

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

Για παράδειγμα, εάν θέλετε να εισαγάγετε τη στήλη μετά τη στήλη Β, τότε μπορείτε να δημιουργήσετε τον κώδικα έτσι.

Στήλες ("C")

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

Αφού καθοριστούν οι στήλες, πρέπει να αποκτήσουμε πρόσβαση στην ιδιότητα "Ολόκληρη η στήλη".

Στήλες ("C"). Ολόκληρη η στήλη

Τότε πρέπει να επιλέξουμε τη μέθοδο "Εισαγωγή".

Στήλες ("C"). Ολόκληρη η στήλη. Εισαγωγή

Αυτό θα εισαγάγει τη στήλη μετά τη στήλη Γ και η υπάρχουσα στήλη Γ θα μετακινηθεί στο D.

Παράδειγμα # 1 - Εισαγωγή στηλών με χρήση αντικειμένου εύρους στο VBA

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

Τώρα θέλω να εισαγάγω τη στήλη VBA μετά τη στήλη Α, ακολουθήστε τα παρακάτω βήματα για να δημιουργήσετε τον κώδικα.

Βήμα 1: Ξεκινήστε τη διαδικασία Sub.

Βήμα 2: Ανοίξτε το αντικείμενο Range .

Κώδικας:

 Sub ColumnInsert_Example1 () Εύρος (End Sub 

Βήμα 3: Τώρα αναφέρετε τη στήλη σε διπλά εισαγωγικά .

Κώδικας:

 Sub ColumnInsert_Example1 () Range ("B: B") End Sub 

Βήμα 4: Τώρα επιλέξτε ολόκληρη την ιδιότητα στήλης .

Κώδικας:

 Υπο στήληInsert_Example1 () Εύρος ("B: B"). Ent End Sub 

Βήμα 5: Αφού επιλέξετε την ιδιότητα Ολόκληρη τη στήλη, επιλέξτε τη μέθοδο "Εισαγωγή" .

Κώδικας:

 Sub ColumnInsert_Example1 () Range ("B: B"). EntireColumn.ins End Sub 

Τώρα ο κωδικός σας μοιάζει με αυτόν.

Κώδικας:

 Υπο στήληInsert_Example1 () Εύρος ("B: B"). Ολόκληρη η κολώνα 

Εκτελέστε τον κωδικό που θα εισαγάγει τη νέα στήλη Β.

Παράδειγμα # 2 - Εισαγωγή πολλαπλών στηλών

Για παράδειγμα, εάν θέλετε να εισαγάγετε δύο νέες στήλες μετά τη στήλη Α, τότε πρέπει να αναφέρουμε δύο διευθύνσεις στηλών.

Κώδικας:

 Υπο στήληInsert_Example1 () Εύρος ("B: C"). Ολόκληρη η στήλη. Ένθετο τέλος 

Ο παραπάνω κωδικός θα εισαγάγει δύο στήλες μετά τη στήλη A.

Παράδειγμα # 3 - Με τη μέθοδο "Εισαγωγή" μόνο

Μπορούμε να εισαγάγουμε μια νέα στήλη χρησιμοποιώντας το "Εισαγωγή" της μόνης μεθόδου χωρίς πρόσβαση στην ιδιότητα Ολόκληρη η στήλη. Γι 'αυτό ας κατανοήσουμε τη σύνταξη μεθόδου «εισαγωγή».

Expression.Insert ([Shift], [Αντιγραφή προέλευσης])

[Shift]: Όταν εισάγουμε τη νέα στήλη εάν χρειαζόμαστε τις στήλες να μετακινηθούν προς τη δεξιά πλευρά ή να μετακινηθούν προς τα κάτω σε περίπτωση σειρών. Εδώ μπορούμε να χρησιμοποιήσουμε δύο επιλογές "xlToRight" και "xlDownTo"

[Αντιγραφή προέλευσης]: Αυτό θα καθορίσει τη μορφή της στήλης που εισήχθη πρόσφατα Είτε χρειάζεστε τη μορφή από την αριστερή πλευρά της στήλης είτε από τα παραπάνω κελιά. Εδώ μπορούμε να χρησιμοποιήσουμε δύο επιλογές "xlFormatFromLeftOrAbove" και "xlFormatFromRightOrBelow".

Παρακάτω είναι το παράδειγμα κώδικα για εσάς.

 Sub ColumnInsert_Example1 () Range ("B: B"). Insert Shift: = xlToRight, Copyorigin: = xlFormatFromLeftOrAbove End Sub 

Παράδειγμα # 4 - Εισαγωγή στηλών χρησιμοποιώντας ιδιότητες COLUMNS στο VBA

Έχουμε δει πώς να εισάγετε στήλες VBA χρησιμοποιώντας αντικείμενο RANGE, τώρα θα δείξουμε ότι μπορούμε να εισάγουμε στήλες χρησιμοποιώντας την ιδιότητα "COLUMNS".

Ανοίξτε την ιδιότητα COLUMNS.

Κώδικας:

 Sub ColumnInsert_Example2 () Στήλες (End Sub 

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

Εάν θέλετε να εισαγάγετε τη στήλη μετά τη στήλη Α, τότε ο κωδικός θα είναι COLUMNS ("B"). Εάν χρησιμοποιείτε αριθμητική αναφορά, τότε ο κωδικός θα είναι COLUMNS (2).

Κώδικας:

Υπο στήληInsert_Example2 () Στήλες ("B"). Τέλος Υποτ

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

Κώδικας:

 Υπο στήληInsert_Example2 () Στήλες ("B"). Entir End Sub 

Εδώ πρέπει να είμαστε σίγουροι για το τι κάνουμε. Αυτός είναι ο λόγος για τον οποίο σας έδειξα πρώτα το αντικείμενο RANGE.

Κώδικας:

 Sub ColumnInsert_Example2 () Στήλες ("B: B"). Ολόκληρη η στήλη. 

Παράδειγμα # 5 - Εισαγωγή εναλλακτικών στηλών

Ας υποθέσουμε ότι έχετε τα δεδομένα όπως η παρακάτω εικόνα.

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

Κώδικας:

 Υπο στήληInsert_Example3 () Dim k As Integer Columns (2). Επιλέξτε For k = 2 to 8 ActiveCell.EntireColumn.Insert ActiveCell.Offset (0, 2). Επιλέξτε Next k End Sub 

Αυτό θα εισαγάγει τη στήλη ως εξής.

Παράδειγμα # 6 - Εισαγωγή στήλης με βάση την τιμή κελιού

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

Εδώ θέλω να εισαγάγω τη στήλη εάν η τιμή του κελιού της πρώτης σειράς είναι "Έτος" και τα δεδομένα μου θα πρέπει να το αρέσει μετά την εισαγωγή νέων στηλών.

Χρησιμοποιήστε τον παρακάτω κωδικό για να εκτελέσετε αυτήν την εργασία.

Κώδικας:

 Υπο στήληInsert_Example4 () Dim k As Integer Dim x As Integer x = 2 For k = 2 to 12 If Cells (1, x). Value = "Year" Then Cells (1, x) .EntireColumn.Insert x = x + 1 End If x = x + 1 Επόμενο k End Sub 

Μπορείτε να κατεβάσετε αυτό το VBA Insert Columns Excel εδώ. Πρότυπο VBA Insert Columns Excel