Εφαρμόστε λειτουργίες όπως MEDIAN σε επιμέρους στοιχεία σε έναν τύπο πίνακα - Excel

ψήφοι
1

Είμαι χρησιμοποιώντας το διάμεσο λειτουργία για να υπολογίσει την επικάλυψη των δύο χρονικά διαστήματα. Ο τύπος μοιάζει κάπως έτσι

=MEDIAN(A18,C18+1,$C$8+1)-MEDIAN(A18,C18+1,$B$8)

A18& C18Είναι εύρος ημερομηνιών 1

B8 & C8 Είναι ημερομηνία εύρος 2

Θέλω να μετατρέψει αυτό σε έναν τύπο πίνακα παρόμοιο με αυτό για να συνοψίσουμε τα αποτελέσματα για πολλαπλές σειρές

{=SUM(MEDIAN(A18:A24,C18:C24+1,$C$8+1)-MEDIAN(A18:24,C18:24+1,$B$8))}

Αυτό λειτουργεί μόνο αν MEDIAN εφαρμόζεται χωριστά για κάθε στοιχείο στις συστοιχίες A18:A24& C18:C24.

Επί του παρόντος, το Excel συνενώνει τις διατάξεις που περιέχονται σε κάθε κλήση MEDIAN και επιστρέφει τη συνολική μέση, αφήνοντας μόνο μία τιμή για το ποσό για να συνοψίσω. Και αυτό είναι το «λάθος» αποτέλεσμα για το τι πρέπει να κάνω.

Είναι ένας τρόπος αναγκάζοντας excel να εφαρμόσει MEDIAN σε κάθε στοιχείο σε συστοιχίες μου; Δηλ είναι ένας τρόπος για να αναγκάσει το Excel για να επιστρέψει έναν πίνακα από τη διάμεση τιμή συνάρτησης εκεί.

Αν αυτό είναι δυνατό μου επιτρέπει να αποφευχθεί μια σειρά 120.000 στοιχείο ή μια ενεργοποιημένη μακρο βιβλίο εργασίας.

Δημοσιεύθηκε 20/10/2018 στις 12:32
πηγή χρήστη
Σε άλλες γλώσσες...                            


1 απαντήσεις

ψήφοι
0

Cool MEDIANτύπου. Αλλά δεν μπορείτε να χρησιμοποιήσετε MEDIANόπως εσείς επιθυμείτε με έναν τύπο πίνακα δεδομένου ότι MEDIANεπιστρέφει πάντα ένα και μόνο αποτέλεσμα (όχι ένας πίνακας).

Έχω μια λύση στο πρόβλημά σας, αλλά είναι κάπως υποτονική / respetitive:

(Έχω συμπεριλάβει τα σχόλια στα δεξιά του τύπου για να εξηγήσει τι συμβαίνει)

= IF(C18:C24>C8,     // (For each cell in C18:C24) If the value is greater than C8
     C8,             // Then C8 is the upper bound
     C18:C24)        // Else, the specific value from C18:C24 is the upper bound
  -                  // (minus sign)
  IF(A18:A24<B8,     // (For each cell in A18:A24) If the value is less than B8
     B8,             // Then B8 is the lower bound
     A18:A24)        // Else, the specific value from A18:A24 is the lower bound

Αυτό επιστρέφει μια σειρά από τις επικαλύψεις των εύρη ημερομηνιών, εκτός από ότι είναι πιθανό ότι αυτά τα αποτελέσματα θα επιστρέψουν των αρνητικών αριθμών (αν δεν συμβεί επικάλυψη), αλλά σε αυτή την περίπτωση που θέλετε να επιστρέψετε 0.

Μπορείτε να πάρετε γύρω από αυτό με μια άλλη IFδήλωση.

= IF(formula < 0, 0, formula)

Όπου formulaείναι η πρώτη τύπου Ι έχουν παραπάνω.

Υποσημείωση: Κανονικά σε αυτή την κατάσταση, θα ήθελα να είναι σε θέση να αποφύγει τη δακτυλογράφηση formulaδύο φορές με κάτι σαν αυτό:

= MAX(formula,0)

Εκτός από αυτό δεν θα λειτουργήσει, όταν η formulaίδια επιστρέφει έναν πίνακα από το MAXεπιστρέφει ένα μοναδικό αποτέλεσμα μόνο. Αυτό είναι ένα παρόμοιο πρόβλημα που αντιμετωπίζετε με MEDIANστην πρώτη θέση.

Συνολικά, χωρίς σχόλια, αυτή είναι η φόρμουλα για να συνοψίσω τις τιμές:

= SUM(IF((IF(C18:C24>C8,C8,C18:C24)-IF(A18:A24<B8,B8,A18:A24))<0,0,
          IF(C18:C24>C8,C8,C18:C24)-IF(A18:A24<B8,B8,A18:A24)))

Φυσικά, αυτό είναι ένα τύπο πίνακα, πρέπει να εισαχθεί με Ctrl+ Shift+ Enterαντί ακριβώς Enter.

Απαντήθηκε 20/10/2018 στις 16:11
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more