Ένας κώδικας VBA για την αντιγραφή υπό όρους από ένα φύλλο σε άλλο

Θέμα

Χρειάζομαι έναν κώδικα VBA που μπορεί να αντιγράψει δεδομένα από το φύλλο1 (ακατέργαστα δεδομένα) στο φύλλο 2, το φύλλο3 και ούτω καθεξής ... με βάση μια συγκεκριμένη αντιστοιχία συνθηκών.

στήλη --- A ------------ B ------------ C ------------ D ------ -ΜΙ

----------- όνομα ----- τόπος ---- εταιρεία --- χώρα

----------- όνομα1 ---- AB ------- Nokia ------- ΗΠΑ

----------- όνομα2 ---- CD ------- Sony -------- Ηνωμένο Βασίλειο

----------- όνομα3 ----- EF ------- LG ----------- ΙΝΔΙΑ

----------- όνομα4 ----- AB ------ Sony ------ ΡΩΣΙΑ

----------- όνομα5 ----- AB ------ Sony ------ ΓΕΡΜΑΝΙΑ

----------- όνομα6 ----- CD ------ Nokia ------ ΙΝΔΙΑ

----------- όνομα7 ----- CD ------ Ericsson - ΗΠΑ

----------- όνομα8 ----- EF ------ Ericsson ---- RUSSIA

----------- όνομα9 ----- GH ------ Lenore ----- Ηνωμένο Βασίλειο

----------- όνομα10 --- GH ------- HP --------- ΙΝΔΙΑ

Λύση

Μπορείτε να χρησιμοποιήσετε τους ακόλουθους κωδικούς

 SubShapes () Dim DataSht, wsCrit, SplitSht Ως φύλλο εργασίας DimLrUnq, lrData, i As Long Dim FtrVal ως Application String.ScreenUpdating = False Set DataSht = Φύλλα εργασίας ("φύλλο1") 'αλλάξτε το όνομα του πρώτου φύλλου δεδομένων σας lrData = DataSht.Range ("a" & Rows.Count) .End (xlUp). Ρύθμιση wsCrit = Φύλλα εργασίας. .Range ("A1"), Μοναδική: = Αληθής lrUnq = wsCrit.Range ("a" & Rows.Count) .End (xlUp) .Row Για i = 2 Για lrUnq FtrVal = wsCrit.Range ) .Καθορίστε την τιμή SplitSht = Worksheets.Add DataSht.Select 'DataSht.ShowAllData ActiveSheet.AutoFilterMode = Λάθος ActiveSheet.Range ("A1: Z" & lrData) Πεδίο AutoFilter: = 2, Criteria1: = FtrVal Range ("a1" .Επιλέξτε Εύρος (Επιλογή, Επιλογή.Πληκτρολογήστε (xlToRight)) Επιλέξτε Περιοχή (Επιλογή, Επιλογή.Εντ (xlDown)) Επιλέξτε Selection.Copy SplitSht.Select Range ("A1") Επιλέξτε ActiveSheet.Paste 'Cells.Select Cells .EntireColumn.AutoFit SplitSht.Name = FtrVal Application.CutCopyMode = False Επόμενη i App lication.DisplayAlerts = False wsCrit.Delete Application.DisplayAlerts = True .AutoFilterMode = False End Sub 

Χάρη στο RWomanizer για αυτό το άκρη.

Προηγούμενο Άρθρο Επόμενο Άρθρο

Οι Καλύτερες Συμβουλές