Μεταφορά VBA (βήμα προς βήμα) - Κορυφαίες 2 μέθοδοι για μεταφορά στο VBA

Πίνακας περιεχομένων

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

Πώς να μεταφέρετε στο VBA;

Η εναλλαγή σειρών και στηλών είναι μία από τις τεχνικές χειρισμού δεδομένων που σχεδόν όλοι οι χρήστες κάνουν στο Excel. Η διαδικασία μετατροπής οριζόντιων δεδομένων σε κατακόρυφα και κάθετα δεδομένα σε οριζόντια ονομάζεται «Transpose» στο excel. Είμαι βέβαιος ότι πρέπει να είστε εξοικειωμένοι με τη μεταφορά σε ένα κανονικό φύλλο εργασίας. Σε αυτό το άρθρο, θα σας δείξουμε πώς να χρησιμοποιήσετε τη μέθοδο μεταφοράς στο VBA coding.

Μπορούμε να μεταφέρουμε στο VBA χρησιμοποιώντας δύο μεθόδους.

  1. Μεταφορά χρησιμοποιώντας τον τύπο TRANSPOSE.
  2. Μεταφορά χρησιμοποιώντας ειδική μέθοδο επικόλλησης.

Όταν μεταφέρουμε, αλλάζουμε σειρές σε στήλες και στήλες σε σειρές. Για παράδειγμα, εάν τα δεδομένα βρίσκονται σε συστοιχία 4 Χ 3, τότε γίνεται πίνακας 3 Χ 4.

Ας δούμε μερικά παραδείγματα για μεταφορά της στήλης σε σειρά στο VBA.

# 1 - Μεταφορά VBA με χρήση του τύπου TRANSPOSE

Όπως και ο τρόπος με τον οποίο χρησιμοποιούμε το TRANSPOSE στο Excel, μπορούμε να χρησιμοποιήσουμε και τον τύπο TRANSPOSE στο VBA. Δεν έχουμε έναν τύπο ΜΕΤΑΦΟΡΑΣ στο VBA, επομένως πρέπει να το χρησιμοποιήσουμε στην κλάση Λειτουργία φύλλου εργασίας.

Για παράδειγμα, δείτε την παρακάτω εικόνα δεδομένων.

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

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

Κώδικας:

Υπο Transpose_Example1 () End Sub

Βήμα 2: Πρώτον, πρέπει να αποφασίσουμε πού θα μεταφέρουμε τα δεδομένα. Σε αυτό, έχω επιλέξει να μεταφέρω από το κελί D1 στο H2. Εισαγάγετε λοιπόν τον κωδικό VBA ως Range ("D1: H2"). Value =

Κώδικας:

Υπο Transpose_Example1 () Range ("D1: H2"). Value = End Sub

Βήμα 3: Τώρα, στο προαναφερθέν εύρος, χρειαζόμαστε την τιμή του εύρους A1 έως B5. Για να φτάσετε σε αυτήν την ανοιχτή τάξη "Λειτουργία φύλλου εργασίας" και επιλέξτε τον τύπο "Μεταφορά".

Βήμα 4: Στο Arg 1, παρέχετε το εύρος πηγών δεδομένων, δηλαδή, Range ("A1: D5") .

Κώδικας:

Sub Transpose_Example1 () Range ("D1: H2"). Value = WorksheetFunction.Trposepose (Range ("A1: D5")) End Sub

Εντάξει, τελειώσαμε με την κωδικοποίηση τύπου TRANSPOSE. Τώρα εκτελέστε τον κώδικα για να δείτε το αποτέλεσμα στο εύρος κελιών D1 έως H2.

Όπως έχουμε δει στην παραπάνω εικόνα, έχει μετατρέψει το εύρος των κελιών από στήλες σε σειρές.

# 2 - Μεταφορά VBA με χρήση ειδικής μεθόδου επικόλλησης

Μπορούμε επίσης να μεταφέρουμε τη μέθοδο Paste Special. Σκεφτείτε επίσης τα ίδια δεδομένα για αυτό το παράδειγμα.

Το πρώτο πράγμα που πρέπει να κάνουμε για τη μεταφορά είναι η αντιγραφή των δεδομένων. Γι 'αυτό γράψτε τον κωδικό ως Range ("A1: B5"). Αντιγράψτε

Κώδικας:

Sub Transpose_Example2 () Range ("A1: B5"). Αντιγραφή End Sub

Το επόμενο είναι ότι πρέπει να αποφασίσουμε πού θα επικολλήσουμε τα δεδομένα. Σε αυτήν την περίπτωση, έχω επιλέξει το D1 ως το επιθυμητό κελί προορισμού.

Κώδικας:

Υπο Transpose_Example2 () Εύρος ("A1: B5"). Εύρος αντιγραφής ("D1"). Τέλος Υποτ

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

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

Αγνοήστε όλες τις παραμέτρους και επιλέξτε την τελευταία παράμετρο, δηλαδή, Transpose, και ορίστε την ως ΑΛΗΘΗ.

Κώδικας:

Sub Transpose_Example2 () Range ("A1: B5"). Copy Range ("D1"). PasteSpecial Transpose: = True End Sub

Αυτό θα μεταφέρει επίσης τα δεδομένα όπως την προηγούμενη μέθοδο.

Έτσι, μπορούμε να χρησιμοποιήσουμε τον τύπο TRANSPOSE ή τη μέθοδο Paste Special για να μεταφέρουμε τα δεδομένα για να αλλάξουμε σειρές σε στήλες και στήλες σε σειρές.

Πράγματα που πρέπει να θυμάστε

  • Εάν χρησιμοποιούμε τη συνάρτηση TRANSPOSE φύλλο εργασίας, είναι υποχρεωτικό να υπολογίσουμε έναν αριθμό γραμμών και στηλών για τη μεταφορά των δεδομένων. Εάν έχουμε 5 σειρές και 3 στήλες, τότε κατά τη μεταφορά, γίνεται 3 σειρές και 5 στήλες.
  • Εάν θέλετε την ίδια μορφοποίηση κατά τη χρήση ειδικής επικόλλησης, τότε πρέπει να χρησιμοποιήσετε το όρισμα "Επικόλληση τύπου" ως "xlPasteFormats"

Μπορείτε να πραγματοποιήσετε λήψη αυτού του προτύπου VBA Transpose Excel από εδώ - Πρότυπο VBA Transpose Excel.

ενδιαφέροντα άρθρα...