Τύπος Excel: Λίστα διακοπών μεταξύ δύο ημερομηνιών -

Πίνακας περιεχομένων

Γενική φόρμουλα

(=TEXTJOIN(", ",TRUE,IF(dates>=start,IF(dates<=end,holidays,""),"")))

Περίληψη

Για να απαριθμήσετε τις αργίες που πραγματοποιούνται μεταξύ δύο ημερομηνιών, μπορείτε να χρησιμοποιήσετε έναν τύπο βάσει των συναρτήσεων TEXTJOIN και IF.

Στο παράδειγμα που εμφανίζεται, ο τύπος στο F8 είναι:

(=TEXTJOIN(", ",TRUE,IF(B4:B12>=F5,IF(B4:B12<=F6,C4:C12,""),"")))

Αυτός είναι ένας τύπος πίνακα και πρέπει να εισαχθεί με τον έλεγχο + shift + enter.

Εξήγηση

Σε υψηλό επίπεδο, αυτός ο τύπος χρησιμοποιεί μια ένθετη συνάρτηση IF για να επιστρέψει μια σειρά διακοπών μεταξύ δύο ημερομηνιών. Στη συνέχεια, αυτός ο πίνακας επεξεργάζεται από τη συνάρτηση TEXTJOIN, η οποία μετατρέπει τον πίνακα σε κείμενο χρησιμοποιώντας κόμμα ως οριοθέτη.

Δουλεύοντας από μέσα προς τα έξω, δημιουργούμε μια σειρά από αντίστοιχες διακοπές χρησιμοποιώντας ένθετο IF

IF(B4:B12>=F5,IF(B4:B12<=F6,C4:C12,""),"")

Εάν οι ημερομηνίες στο B4: B12 είναι μεγαλύτερες ή ίσες με την ημερομηνία έναρξης στο F5 και εάν οι ημερομηνίες στο B4: B12 είναι μικρότερες ή ίσες με την ημερομηνία λήξης στο F6, τότε το IF επιστρέφει μια σειρά διακοπών. Στο παράδειγμα που εμφανίζεται, η λίστα μοιάζει με αυτήν:

(""; ""; "Ημέρα των Προέδρων"; "Ημέρα μνήμης"; ""; ""; ""; ""; "")

Αυτή η συστοιχία κατόπιν παραδίδεται στη συνάρτηση TEXTJOIN ως κείμενο1 επιχείρημα, όπου ο οριοθέτης έχει οριστεί σε «» και ignore_empty είναι True. Η συνάρτηση TEXT JOIN επεξεργάζεται τα στοιχεία του πίνακα και επιστρέφει μια συμβολοσειρά όπου κάθε μη κενό στοιχείο διαχωρίζεται με κόμμα συν κενό.

Σημείωση: η συνάρτηση TEXTJOIN είναι μια νέα λειτουργία που διατίθεται στο Office 365 και το Excel 2019.

ενδιαφέροντα άρθρα...