Applies ToExcel για Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016 Excel 2013

Αυτή η ενότητα περιγράφει τον τρόπο δημιουργίας φίλτρων μέσα σε τύπους παραστάσεων ανάλυσης δεδομένων (DAX). Μπορείτε να δημιουργήσετε φίλτρα μέσα σε τύπους, για να περιορίσετε τις τιμές από τα δεδομένα προέλευσης που χρησιμοποιούνται στους υπολογισμούς. Αυτό μπορείτε να το κάνετε καθορίζοντας έναν πίνακα ως εισαγωγή στον τύπο και, στη συνέχεια, καθορίζοντας μια παράσταση φίλτρου. Η παράσταση φίλτρου που παρέχετε χρησιμοποιείται για την υποβολή ερωτημάτων στα δεδομένα και την επιστροφή μόνο ενός υποσυνόλου των δεδομένων προέλευσης. Το φίλτρο εφαρμόζεται δυναμικά κάθε φορά που ενημερώνετε τα αποτελέσματα του τύπου, ανάλογα με το τρέχον περιβάλλον των δεδομένων σας.

Σε αυτό το άρθρο

Δημιουργία φίλτρου σε πίνακα που χρησιμοποιείται σε έναν τύπο

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

Για παράδειγμα, ας υποθέσουμε ότι έχετε έναν πίνακα δεδομένων που περιέχει πληροφορίες παραγγελιών σχετικά με τους μεταπωλητές και θέλετε να υπολογίσετε το ποσό πώλησης κάθε μεταπωλητή. Ωστόσο, θέλετε να εμφανίσετε το ποσό πωλήσεων μόνο για εκείνους τους μεταπωλητές που πώλησαν πολλές μονάδες των προϊόντων υψηλότερης αξίας. Ο παρακάτω τύπος, με βάση το δείγμα βιβλίου εργασίας DAX, εμφανίζει ένα παράδειγμα του τρόπου με τον οποίο μπορείτε να δημιουργήσετε αυτόν τον υπολογισμό χρησιμοποιώντας ένα φίλτρο:

=SUMX(      FILTER ('ResellerSales_USD', 'ResellerSales_USD'[Ποσότητα] > 5 &&      'ResellerSales_USD'[ProductStandardCost_USD] > 100),      'ResellerSales_USD'[SalesAmt]      )

  • Το πρώτο μέρος του τύπου καθορίζει μία από τις συναρτήσεις συνάθροισης Power Pivot, η οποία δέχεται έναν πίνακα ως όρισμα. Η συνάρτηση SUMX υπολογίζει ένα άθροισμα επάνω από έναν πίνακα.

  • Το δεύτερο τμήμα του τύπου, FILTER(table, expression),υποδεικνύει SUMX ποια δεδομένα να χρησιμοποιήσετε. SUMX απαιτεί έναν πίνακα ή μια παράσταση που έχει ως αποτέλεσμα έναν πίνακα. Εδώ, αντί να χρησιμοποιήσετε όλα τα δεδομένα σε έναν πίνακα, μπορείτε να χρησιμοποιήσετε τη συνάρτηση FILTER για να καθορίσετε ποιες γραμμές από τον πίνακα χρησιμοποιούνται.

    Η παράσταση φίλτρου έχει δύο μέρη: το πρώτο τμήμα ονομάζει τον πίνακα στον οποίο εφαρμόζεται το φίλτρο. Το δεύτερο τμήμα ορίζει μια παράσταση που θα χρησιμοποιηθεί ως συνθήκη φίλτρου. Σε αυτή την περίπτωση, φιλτράρετε με μεταπωλητές που πούλησαν περισσότερες από 5 μονάδες και προϊόντα που κοστίζουν περισσότερο από 100 $. Ο τελεστής, &&, είναι ένας λογικός τελεστής AND, ο οποίος υποδεικνύει ότι και τα δύο μέρη της συνθήκης πρέπει να είναι αληθή για να ανήκει η γραμμή στο φιλτραρισμένο υποσύνολο.

  • Το τρίτο τμήμα του τύπου υποδεικνύει στη συνάρτηση SUMX ποιες τιμές πρέπει να αθροιστούν. Σε αυτή την περίπτωση, χρησιμοποιείτε μόνο το ποσό των πωλήσεων.

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

    Σημείωση: Η παράσταση φίλτρου επηρεάζεται από το περιβάλλον στο οποίο χρησιμοποιείται. Για παράδειγμα, εάν χρησιμοποιήσετε ένα φίλτρο σε μια μέτρηση και η μέτρηση χρησιμοποιηθεί σε έναν Συγκεντρωτικό Πίνακα ή ένα Συγκεντρωτικό Γράφημα, το υποσύνολο των δεδομένων που επιστρέφονται μπορεί να επηρεαστεί από πρόσθετα φίλτρα ή αναλυτές που έχει εφαρμόσει ο χρήστης στον Συγκεντρωτικό Πίνακα. Για περισσότερες πληροφορίες σχετικά με το περιβάλλον, ανατρέξτε στο θέμα Περιβάλλον σε τύπους DAX.

Φίλτρα που καταργούν διπλότυπα

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

  • Η συνάρτηση DISTINCT εξετάζει μία στήλη που καθορίζετε ως όρισμα στη συνάρτηση και επιστρέφει μια νέα στήλη που περιέχει μόνο τις διακριτές τιμές.

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

Και οι δύο αυτές συναρτήσεις επιστρέφουν μια ολόκληρη στήλη τιμών. Επομένως, μπορείτε να χρησιμοποιήσετε τις συναρτήσεις για να λάβετε μια λίστα τιμών που μεταβιβάζεται στη συνέχεια σε μια άλλη συνάρτηση. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε τον παρακάτω τύπο για να λάβετε μια λίστα με τα διακριτά προϊόντα που πωλούνται από έναν συγκεκριμένο μεταπωλητή, χρησιμοποιώντας τον μοναδικό αριθμό-κλειδί προϊόντος και, στη συνέχεια, να μετρήσετε τα προϊόντα σε αυτήν τη λίστα χρησιμοποιώντας τη συνάρτηση COUNTROWS:

=COUNTROWS(DISTINCT('ResellerSales_USD'[Κλειδί προϊόντος]))

Αρχή της σελίδας

Πώς το περιβάλλον επηρεάζει τα φίλτρα

Όταν προσθέτετε έναν τύπο DAX σε έναν Συγκεντρωτικό Πίνακα ή ένα Συγκεντρωτικό Γράφημα, τα αποτελέσματα του τύπου μπορούν να επηρεαστούν από το περιβάλλον. Εάν εργάζεστε σε έναν πίνακα Power Pivot, το περιβάλλον είναι η τρέχουσα γραμμή και οι τιμές της. Εάν εργάζεστε σε Συγκεντρωτικό Πίνακα ή Συγκεντρωτικό Γράφημα, το περιβάλλον σημαίνει το σύνολο ή το υποσύνολο δεδομένων που καθορίζεται από λειτουργίες όπως ο τεμαχισμό ή το φιλτράρισμα. Η σχεδίαση του Συγκεντρωτικού Πίνακα ή του Συγκεντρωτικού Γραφήματος επιβάλλει επίσης το δικό του περιβάλλον. Για παράδειγμα, εάν δημιουργήσετε έναν Συγκεντρωτικό Πίνακα που ομαδοποιεί τις πωλήσεις ανά περιοχή και έτος, μόνο τα δεδομένα που ισχύουν για αυτές τις περιοχές και έτη εμφανίζονται στον Συγκεντρωτικό Πίνακα. Επομένως, οι μετρήσεις που προσθέτετε στον Συγκεντρωτικό Πίνακα υπολογίζονται στο περιβάλλον των επικεφαλίδων στηλών και γραμμών, καθώς και σε οποιαδήποτε φίλτρα στον τύπο μέτρησης.

Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα Περιβάλλον σε τύπους DAX.

Αρχή της σελίδας

Κατάργηση φίλτρων

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

Παράκαμψη όλων των φίλτρων με τη συνάρτηση ALL

Μπορείτε να χρησιμοποιήσετε τη συνάρτηση ALL για να παρακάμψετε τυχόν φίλτρα που έχουν εφαρμοστεί προηγουμένως και να επαναφέρετε όλες τις γραμμές του πίνακα στη συνάρτηση που εκτελεί το συγκεντρωτικό αποτέλεσμα ή άλλη λειτουργία. Εάν χρησιμοποιήσετε μία ή περισσότερες στήλες, αντί για έναν πίνακα, ως ορίσματα για να ALL, η συνάρτηση ALL επιστρέφει όλες τις γραμμές, παραβλέποντας τυχόν φίλτρα περιβάλλοντος.

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

Για παράδειγμα, ας υποθέσουμε ότι έχετε τους πίνακες Πωλήσεις και Προϊόντα και θέλετε να δημιουργήσετε έναν τύπο που θα υπολογίσει το άθροισμα των πωλήσεων για το τρέχον προϊόν δια των πωλήσεων για όλα τα προϊόντα. Πρέπει να λάβετε υπόψη το γεγονός ότι, εάν ο τύπος χρησιμοποιείται σε μια μέτρηση, ο χρήστης του Συγκεντρωτικού Πίνακα μπορεί να χρησιμοποιεί έναν αναλυτή για να φιλτράρει για ένα συγκεκριμένο προϊόν, με το όνομα του προϊόντος στις γραμμές. Επομένως, για να λάβετε την πραγματική τιμή του παρονομαστή ανεξάρτητα από τυχόν φίλτρα ή αναλυτές, πρέπει να προσθέσετε τη συνάρτηση ALL για να παρακάμψετε τυχόν φίλτρα. Ο παρακάτω τύπος αποτελεί ένα παράδειγμα του τρόπου χρήσης οΛΩΝ για την παράκαμψη των εφέ προηγούμενων φίλτρων:

=SUM (Πωλήσεις[Ποσό])/SUMX(Πωλήσεις[Ποσό]; FILTER(Πωλήσεις; ALL(Προϊόντα)))

  • Το πρώτο μέρος του τύπου, η συνάρτηση SUM (Πωλήσεις[Ποσό]), υπολογίζει τον αριθμητή.

  • Το άθροισμα λαμβάνει υπόψη το τρέχον περιβάλλον, το οποίο σημαίνει ότι εάν προσθέσετε τον τύπο σε μια υπολογιζόμενη στήλη, εφαρμόζεται το περιβάλλον γραμμής και, εάν προσθέσετε τον τύπο σε έναν Συγκεντρωτικό Πίνακα ως μέτρηση, εφαρμόζονται τυχόν φίλτρα που εφαρμόζονται στον Συγκεντρωτικό Πίνακα (περιβάλλον φίλτρου).

  • Το δεύτερο τμήμα του τύπου υπολογίζει τον παρονομαστή. Η συνάρτηση ALL παρακάμπτει τυχόν φίλτρα που μπορεί να εφαρμοστούν στον πίνακα Products .

Για περισσότερες πληροφορίες, συμπεριλαμβανομένων λεπτομερών παραδειγμάτων, ανατρέξτε στο θέμα ΟΛΑ Η συνάρτηση.

Παράκαμψη συγκεκριμένων φίλτρων με τη συνάρτηση ALLEXCEPT

Η συνάρτηση ALLEXCEPT παρακάμπτει επίσης υπάρχοντα φίλτρα, αλλά μπορείτε να καθορίσετε ότι ορισμένα από τα υπάρχοντα φίλτρα θα πρέπει να διατηρηθούν. Οι στήλες που ονομάζετε ως ορίσματα στη συνάρτηση ALLEXCEPT καθορίζουν ποιες στήλες θα συνεχίσουν να φιλτράρονται. Εάν θέλετε να παρακάμψετε τα φίλτρα από τις περισσότερες στήλες αλλά όχι από όλες, η συνάρτηση ALLEXCEPT είναι πιο βολική από ΟΛΑ. Η συνάρτηση ALLEXCEPT είναι ιδιαίτερα χρήσιμη όταν δημιουργείτε Συγκεντρωτικούς Πίνακες που μπορεί να φιλτραριστούν σε πολλές διαφορετικές στήλες και θέλετε να ελέγξετε τις τιμές που χρησιμοποιούνται στον τύπο. Για περισσότερες πληροφορίες, όπως ένα λεπτομερές παράδειγμα του τρόπου χρήσης της συνάρτησης ALLEXCEPT σε έναν Συγκεντρωτικό Πίνακα, ανατρέξτε στο θέμα Συνάρτηση ALLEXCEPT.

Αρχή της σελίδας

Χρειάζεστε περισσότερη βοήθεια;

Θέλετε περισσότερες επιλογές;

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

Οι κοινότητες σάς βοηθούν να κάνετε και να απαντάτε σε ερωτήσεις, να δίνετε σχόλια και να ακούτε από ειδικούς με πλούσια γνώση.