Εμφάνιση ενός μόνο μηνύματος
  #1  
Παλιά 20-12-20, 01:12
caudillo Ο χρήστης caudillo δεν είναι συνδεδεμένος
Όνομα: Κώστας
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική
 
Εγγραφή: 16-03-2015
Μηνύματα: 151
Προεπιλογή Φιλτράρισμα και αντιγραφή

Καλημέρα σε όλους,
εύχομαι όλοι μας και οι οικογένειές μας, να είμαστε υγιείς αυτήν την δύσκολη περίοδο.
Παίρνω το θάρρος να (ξανα)ζητήσω την βοήθειά σας, καθώς είμαι αρχάριος - πολύ αρχάριος - στην VBA, αλλά μου αρέσει πολύ και θέλω να πειραματίζομαι και να προσπαθώ.
Έχω, λοιπόν, ένα φύλλο εργασίας με 24 στήλες και 1132 σειρές με δεδομένα. Φυσικά, για να μπορώ να τα επεξεργαστώ ευκολότερα, θα πρέπει να τα φιλτράρω.
Στην αρχή σκέφτηκα τα απλά φίλτρα του Excel, αλλά έπεσα πάνω στον παρακάτω κώδικα στο internet και θέλησα να τον χρησιμοποιήσω.
Τον αντέγραψα (με τις απαραίτητες αλλαγές στα φύλλα και τα κελιά), αλλά μου βγάζει μήνυμα λάθους "Run-time error 1004".
Προσπάθησα, με τις ελάχιστες γνώσεις μου να καταλάβω που είναι το λάθος, αλλά δεν τα κατάφερα. Γι' αυτό απευθύνομαι σε εσάς, μήπως μπορέσετε να με βοηθήσετε.
Ο κώδικας είναι ο εξής:
Κώδικας:
Sub copy_filtered_data()
    
Dim count_col, count_row As Integer
Dim orig, output As Worksheet

ThisWorkbook.Sheets("Sheet3").Cells.ClearContents
Worksheets("Sheet1").Activate

Set orig = ThisWorkbook.Sheets("Sheet1")
Set output = ThisWorkbook.Sheets("Sheet3")

count_col = WorksheetFunction.CountA(Range("A7", Range("A7").End(xlToRight)))
count_row = WorksheetFunction.CountA(Range("A7", Range("A7").End(xlDown)))

ActiveSheet.Range("A7").AutoFilter Field:=2, Criterial:=Cells(2, 1).Value

orig.Range(Cells(7, 1).Cells(count_row, count_col)).SpecialCells(xlCellTypeVisible).Copy
output.Cells(1, 1).PasteSpecial xlPasteValues
Application.CutCopyMode = False
Worksheets("Sheet1").ShowAllData
Worksheets("Sheet1").AutoFilterMode = False
Worksheets("Sheet3").Activate
ActiveSheet.Range("A1").Select

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