Εμφάνιση ενός μόνο μηνύματος
  #3  
Παλιά 10-02-13, 00:53
Το avatar του χρήστη Spirosgr
Spirosgr Ο χρήστης Spirosgr δεν είναι συνδεδεμένος
Συντονιστής
Όνομα: Σπύρος Τσιλιγιάννης
Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007, Ms-Office 2010, Ms-Office 2013, Ms-Office 2016, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 22-11-2011
Περιοχή: Αθήνα
Μηνύματα: 2.321
Προεπιλογή

Καλημέρα
Θα μπορούσε κανείς να χρησιμοποιήσει μια αυτοματοποιημένη μέθοδο όσον αφορά την ταξινόμιση στοιχείων που τον ενδιαφέρουν ως εξής:
Στο ζητούμενο για παράδειγμα θέλουμε ταξινόμιση ημερομηνιών .
Περνάμε τον παρακάτω κώδικα στο φύλλο και όχι σε Module

Κώδικας:
Private Sub Worksheet_Change(ByVal Target As Range)
    Application.ScreenUpdating = False
    Sheet1.ListObjects("Table1").Sort.SortFields.Clear
    Sheet1.ListObjects("Table1").Sort.SortFields.Add _
            Key:=Range("Table1[Ημερομηνία]"), SortOn:=xlSortOnValues, Order:=xlAscending, _
            DataOption:=xlSortNormal
    With Sheet1.ListObjects("Table1").Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
Όπου Sheet1 το κωδικό όνομα του φύλλου
Table1 η ονομασία του πίνακα δεδομένων μας
και Table1[Ημερομηνία] η στήλη που θα ταξινομιθεί

Σε κάθε καταχώρηση ημερομηνίας ο κώδικας βρίσκει την σειρά της και την τοποθετεί παρασύροντας και τα υπόλοιπα δεδομένα να μπούν στην σωστή σειρά
Ο κωδικας είναι πολύ γρήγορος αν και εφ όσον το φύλλο περιέχει απλές καταχωρήσεις ή απλούς υπολογισμούς
Αν περιέχει περίπλοκους υπολογισμούς πάλι λειτουργεί πολύ καλά αλλά καθυστερεί ελάχιστα
Σε 2010 έκδοση έχει γίνει εφαρμογή σε ημερολόγιο ταμείου με συναρτήσεις IF, AND, OR, SUM, AVERAGE και συνδιασμό κάποιων από τους παραπάνω τύπους σε 12 στήλες καθώς και με 3 Conditional Formating και είναι ακαριαίος
Όσον αφορά την μεταφορά των αρχείων από διαφορετικά φύλλα σε ένα θα προτεινα ένα και μόνο φύλλο ΕΣΟΔΑ ΕΞΟΔΑ με διαφορετικό ID πχ 1=ΕΣΟΔΑ, 2=ΕΞΟΔΑ
Οπότε ή με φίλτρο φιλτράροντας ως προς 1 ή 2 να παίρνουμε και συγκεντρωτικά τα αποτελέσματα μας ή και με Pivot table
Απάντηση με παράθεση