Επικόλληση σε ένα φιλτραρισμένο σύνολο δεδομένων - Συμβουλές για το Excel

Ο Joe ρωτά εάν υπάρχει τρόπος να γίνει μια λειτουργία φιλτραρισμένης επικόλλησης στο Excel.

Ας υποθέσουμε ότι έχετε 1000 εγγραφές στο Φύλλο1. Φιλτράρετε αυτό το σύνολο δεδομένων για να σας δείξει μόνο τις εγγραφές με ProdID = Z. Επιλέξτε το σύνολο δεδομένων και επικολλήστε στο Φύλλο2. Ωραία, το Excel φέρνει μόνο τις ορατές εγγραφές, επομένως έχετε ένα συνεχόμενο μπλοκ κελιών. Ίσως κάνετε κάποιους μετασχηματισμούς σε αυτές τις εγγραφές και τώρα πρέπει να το επικολλήσετε ξανά στο αρχικό σύνολο δεδομένων. Το Excel ΔΕΝ προσφέρει κανέναν εύκολο τρόπο για να γίνει αυτό. Η μακροεντολή σε αυτό το βίντεο θα βοηθήσει στη διαδικασία. Κατέγραψα το Learn Excel Podcast επεισόδιο 977 που δείχνει μια μακροεντολή για να βοηθήσει με αυτήν την ενέργεια. Εδώ θα βρείτε το βίντεο και τον κωδικό που χρησιμοποιείται στο βιβλίο εργασίας του Excel.

Δες το βίντεο

Αντέγραψε αυτόν τον κωδικό

Προσαρμόστησα λίγο τον κώδικα από το βίντεο. Αυτό προϋποθέτει ότι θα αντιγράψετε τη γραμμή επικεφαλίδας και τις φιλτραρισμένες εγγραφές από το Sheet1 στο Sheet2:

Sub PasteBack() ' Assumes the Filterered Sheet1 is active Set DataToCopy = Sheet2.Range("A1").CurrentRegion n = 2 ' index for range to copy from Sheet2 one row at a time, skipping headers For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row ' row 1 is header If Not Rows(i).Hidden Then DataToCopy.Offset(n - 1).Resize(1).Copy Cells(i, 1) n = n + 1 If n> DataToCopy.Rows.Count Then Exit Sub End If Next i End Sub

Μια λύση χωρίς μακροεντολές

Μετά το πρώτο βίντεο που προβλήθηκε, ο Gary έστειλε μια νέα λύση χρησιμοποιώντας το Paste Skip Blanks. Παρακολουθήστε αυτό το βίντεο εδώ :.

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