Ειδική επικόλληση VBA | Κορυφαίοι 5 τρόποι χρήσης της λειτουργίας VBA PasteSpecial;

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

Ειδική επικόλληση στο VBA

Το Paste Special in excel εξυπηρετεί με πολλούς τρόπους στην καθημερινή μας εργασία. Χρησιμοποιώντας ειδική επικόλληση μπορούμε να κάνουμε πολλά περισσότερα από τα συνηθισμένα. Η αντιγραφή και επικόλληση υπάρχει παντού στον κόσμο των υπολογιστών. Όμως η ειδική επικόλληση είναι το προηγμένο πράγμα στο Excel.

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

Στην κανονική επικόλληση excel περιλαμβάνονται πολλές επιλογές όπως τιμές μόνο επικόλλησης, τύποι επικόλλησης, μορφές επικόλλησης κ.λπ.…

Η ειδική επικόλληση πρέπει να γίνεται Επικόλληση, Λειτουργία, Παράλειψη κενών και Μεταφορά έτσι στο VBA. Έχουμε επίσης όλες τις παραμέτρους με τη μέθοδο Επικόλλησης Ειδικού .

Η φόρμουλα της ειδικής επικόλλησης στο VBA

Ακολουθεί η φόρμουλα για ειδική επικόλληση στο VBA

Το Paste Special είναι διαθέσιμο με το αντικείμενο VBA Range επειδή αφού αντιγράψουμε τα δεδομένα, θα τα επικολλήσουμε στην περιοχή κελιών, οπότε η ειδική μέθοδο επικόλλησης είναι διαθέσιμη με αντικείμενο εύρους .

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

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

  • [Skip Blanks]: Αν θέλετε να παραλείψετε τα κενά τότε μπορείτε να επιλέξετε TRUE ή FALSE.
  • [Transpose]: Εάν θέλετε να μεταφέρετε τα δεδομένα, τότε μπορείτε να επιλέξετε TRUE ή FALSE.

Παραδείγματα ειδικής επικόλλησης στο Excel VBA

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

Μπορείτε να κατεβάσετε αυτό το ειδικό πρότυπο επικόλλησης VBA εδώ - Ειδικό πρότυπο επικόλλησης VBA

Παράδειγμα # 1 - Επικόλληση μόνο τιμών χρησιμοποιώντας τη συνάρτηση VBA PasteSpecial

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

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

Βήμα 1: Δημιουργήστε πρώτα ένα όνομα μακροεντολής.

Βήμα 2: Πρώτα αντιγράψτε το εύρος A1 έως D14 από το όνομα φύλλου "Δεδομένα πωλήσεων". Για να αντιγράψετε το εύρος, εφαρμόστε τον παρακάτω κωδικό.

Κώδικας: 

Εύρος ("A1: D14"). Αντιγραφή

Βήμα 3: Μετά την αντιγραφή των δεδομένων θα επικολλήσουμε τις τιμές από το G1 έως το J14. Πρώτη αναφορά στο εύρος.

Κώδικας:

Εύρος ("G1: J14")

Βήμα 4: Αφού επιλέξετε το εύρος που πρέπει να επικολλήσετε. Βάλτε λοιπόν μια τελεία (.) Και επιλέξτε Ειδική μέθοδο επικόλλησης

Κώδικας:

 Sub PasteSpecial_Example1 () Εύρος ("A1: D14"). Εύρος αντιγραφής ("G1: J14"). PasteSpecial End Sub 

Βήμα 5: Από την αναπτυσσόμενη λίστα, επιλέξτε την επιλογή "xlPasteValues".

Κώδικας:

 Sub PasteSpecial_Example1 () Εύρος ("A1: D14"). Εύρος αντιγραφής ("G1: J14"). PasteSpecial xlPasteValues ​​End Sub 

Βήμα 6: Τώρα εκτελέστε αυτόν τον κωδικό χρησιμοποιώντας το πλήκτρο F5 ή χειροκίνητα και δείτε τι συμβαίνει.

Έτσι, ο κώδικάς μας αντιγράφει τα δεδομένα από το Α1 έως το D14 και επικολλήθηκε από το G1 στο J14 ως τιμές.

Έχει εκτελέσει το καθήκον του πλήκτρο συντόμευσης του Excel στο φύλλο εργασίας ALT + E + S + V .

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

Τώρα θα δούμε τι θα συμβεί αν εκτελέσουμε την εργασία του xlPasteAll.

Κώδικας:

 Sub PasteSpecial_Example2 () Εύρος ("A1: D14"). Εύρος αντιγραφής ("G1: J14"). PasteSpecial xlPasteAll End Sub 

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

Παράδειγμα # 3 - Επικόλληση μορφών χρησιμοποιώντας τη λειτουργία VBA PasteSpecial

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

Κώδικας:

 Sub PasteSpecial_Example3 () Εύρος ("A1: D14"). Εύρος αντιγραφής ("G1: J14"). PasteSpecial xlPasteFormats End Sub 

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

Παράδειγμα # 4 - Επικόλληση πλάτους στήλης με χρήση VBA Paste Special

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

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

Κώδικας:

 Sub PasteSpecial_Example3 () Εύρος ("A1: D14"). Εύρος αντιγραφής ("G1: J14"). PasteSpecial xlPasteColumnWidths End Sub 

Εκτελέστε αυτόν τον κωδικό και δείτε τη διαφορά στο πλάτος της στήλης.

Τώρα μπορούμε να δούμε ότι το πλάτος της στήλης Πωλήσεις έχει αυξηθεί στο πλάτος της στήλης της στήλης εύρους που αντιγράψαμε.

Παράδειγμα # 5 - Αντιγράψτε τα δεδομένα από ένα φύλλο σε άλλο φύλλο χρησιμοποιώντας VBA Paste Special Option

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

Βήμα 1: Πριν επιλέξουμε το εύρος που πρέπει να πούμε από ποιο φύλλο πρέπει να επιλέξουμε τα δεδομένα.

Κώδικας:

 Sub PasteSpecial_Example5 () Φύλλα εργασίας ("Δεδομένα πωλήσεων") End Sub 

Βήμα 2: Αφού επιλέξετε το φύλλο με το όνομά του, τότε πρέπει να επιλέξετε το εύρος σε αυτό το φύλλο. Το αντίγραφο.

Κώδικας:

 Sub PasteSpecial_Example5 () Φύλλα εργασίας ("Δεδομένα πωλήσεων"). Εύρος ("A1: D14"). Αντιγραφή End Sub 

Ο παραπάνω κωδικός αναφέρει στο όνομα του φύλλου "Δεδομένα πωλήσεων" αντιγράψτε το εύρος ("A1: D14")

Βήμα 3: Εφόσον το επικολλάμε στο διαφορετικό φύλλο, πρέπει να επιλέξουμε το φύλλο με το όνομά του.

Κώδικας:

 Sub PasteSpecial_Example5 () Φύλλα εργασίας ("Δεδομένα πωλήσεων"). Εύρος ("A1: D14"). Αντιγραφή φύλλων εργασίας ("Φύλλο μήνα") End Sub 

Βήμα 4: Τώρα στο φύλλο "Φύλλο μήνα" επιλέξτε το εύρος.

Κώδικας:

 Sub PasteSpecial_Example5 () Φύλλα εργασίας ("Δεδομένα πωλήσεων"). Εύρος ("A1: D14"). Αντιγραφή φύλλων εργασίας ("Φύλλο μήνα"). Εύρος ("A1: D14") End Sub 

Βήμα 5: Χρησιμοποιώντας ειδική επικόλληση, θα επικολλήσουμε τιμές και μορφή.

Κώδικας:

 Sub PasteSpecial_Example5 () Φύλλα εργασίας ("Δεδομένα πωλήσεων"). Εύρος ("A1: D14"). Αντιγράψτε φύλλα εργασίας ("Φύλλο μήνα"). Εύρος ("A1: D14"). PasteSpecial xlPasteValuesAndNumberFormats End Sub 

Βήμα 6: Δεν επικολλάμε μόνο τιμές και μορφή χρησιμοποιώντας το VBA Paste Special, αλλά το επικολλάμε και ως TRANSPOSE.

Κώδικας:

 Sub PasteSpecial_Example5 () Φύλλα εργασίας ("Δεδομένα πωλήσεων"). Εύρος ("A1: D14"). Αντιγράψτε φύλλα εργασίας ("Φύλλο μήνα"). Εύρος ("A1: D14"). PasteSpecial xlPasteValuesAndNumberFormats, Transpose: = True End Sub 

Τώρα εκτελέστε αυτόν τον κώδικα που θα αντιγράψει και θα μεταφέρει τα δεδομένα στο "Sheet Month".

Πράγματα που πρέπει να θυμάστε σχετικά με το Excel VBA PasteSpecial Function

  • Αν θέλετε να παραλείψετε κενά, πρέπει να εισαγάγετε το όρισμα ως ΑΛΗΘΕΙΑ από προεπιλογή, παίρνει ΛΑΘΟΣ.
  • Εάν θέλετε να μεταφέρετε τα δεδομένα, πρέπει να επιλέξουμε τη μεταφορά ως ΑΛΗΘΕΙΑ.
  • Μπορούμε να εκτελέσουμε μόνο μία ειδική πάστα κάθε φορά.