Τύπος Excel: Μετρήστε τις συνολικές λέξεις σε ένα κελί -

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

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

=LEN(TRIM(A1))-LEN(SUBSTITUTE(A1," ",""))+1

Περίληψη

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

=LEN(TRIM(B5))-LEN(SUBSTITUTE(B5," ",""))+1

Ο τύπος επιστρέφει τον αριθμό λέξεων στο κελί B5.

Εξήγηση

Το Excel δεν έχει ειδική λειτουργία για τη μέτρηση λέξεων σε ένα κελί. Ωστόσο, με λίγη ευφυΐα, μπορείτε να δημιουργήσετε έναν τέτοιο τύπο χρησιμοποιώντας τις λειτουργίες SUBSTITUTE και LEN, με τη βοήθεια του TRIM, όπως φαίνεται στο παράδειγμα. Σε υψηλό επίπεδο, αυτός ο τύπος χρησιμοποιεί τη συνάρτηση LEN για να μετρήσει τον αριθμό χαρακτήρων στο κελί, με και χωρίς κενά, και στη συνέχεια χρησιμοποιεί τη διαφορά για να υπολογίσει τον αριθμό λέξεων. Αυτό λειτουργεί, επειδή ο αριθμός λέξεων είναι ίσος με τον αριθμό των κενών + 1, αρκεί να υπάρχει ένα κενό μεταξύ κάθε λέξης.

Το πρώτο μέρος του τύπου μετρά τους χαρακτήρες στο κελί B5, αφού αφαιρέσει επιπλέον χώρο:

=LEN(TRIM(B5)) // normalize space, count characters

Μέσα στο LEN, η συνάρτηση TRIM καταργεί πρώτα τυχόν επιπλέον κενά μεταξύ λέξεων ή στην αρχή ή στο τέλος του κειμένου. Αυτό είναι σημαντικό, καθώς τυχόν επιπλέον διαστήματα θα απορρίψουν τον αριθμό λέξεων. Σε αυτήν την περίπτωση, δεν υπάρχουν επιπλέον χαρακτήρες διαστήματος, επομένως το TRIM επιστρέφει το αρχικό κείμενο απευθείας στη συνάρτηση LEN, η οποία επιστρέφει 30:

LEN("All Quiet on the Western Front") // returns 30

Σε αυτό το σημείο, έχουμε:

=30-LEN(SUBSTITUTE(B5," ",""))+1

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

SUBSTITUTE(B5," ","") // strip all space

Παρατηρήστε το SUBSTITUTE έχει διαμορφωθεί για να αναζητά ένα χαρακτήρα διαστήματος ("") και να αντικαθίσταται με μια κενή συμβολοσειρά (""). Από προεπιλογή, το SUBSTITUTE θα αντικαταστήσει όλα τα κενά. Το αποτέλεσμα παραδίδεται απευθείας στη συνάρτηση LEN, η οποία επιστρέφει τον αριθμό:

LEN("AllQuietontheWesternFront") // returns 25

Το LEN επιστρέφει 25, ο αριθμός των χαρακτήρων που απομένουν μετά την αφαίρεση όλου του χώρου. Μπορούμε τώρα να απλοποιήσουμε τον τύπο σε:

=30-25+1 // returns 6

που επιστρέφει 6 ως τελικό αποτέλεσμα, ο αριθμός των λέξεων στο κελί B5.

Αντιμετώπιση κενών κελιών

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

=LEN(TRIM(B5))-LEN(SUBSTITUTE(B5," ",""))+(LEN(TRIM(B5))>0)

Σημειώστε ότι έχουμε αντικαταστήσει το 1 με αυτήν την έκφραση:

LEN(TRIM(B5))>0

Αυτός ο κωδικός πρώτα περικόπτει το B5 και μετά ελέγχει το μήκος Εάν το B5 περιέχει κείμενο, το LEN επιστρέφει έναν θετικό αριθμό και η έκφραση επιστρέφει TRUE. Εάν το B5 είναι κενό ή περιέχει μόνο χώρο, το TRIM επιστρέφει μια κενή συμβολοσειρά ("") στο LEN. Σε αυτήν την περίπτωση, το LEN επιστρέφει μηδέν (0) και η έκφραση επιστρέφει FALSE. Το κόλπο είναι ότι TRUE και FALSE αξιολογούνται στο 1 και το μηδέν, αντίστοιχα, όταν εμπλέκονται σε οποιαδήποτε μαθηματική λειτουργία. Ως αποτέλεσμα, η έκφραση προσθέτει μόνο 1 όταν υπάρχει κείμενο στο B5. Διαφορετικά, προσθέτει μηδέν (0). Αυτή η λογική θα μπορούσε επίσης να γραφτεί με τη δήλωση συνάρτησης IF ως εξής:

IF(LEN(TRIM(B5))>0,1,0)

και το αποτέλεσμα θα ήταν το ίδιο. Η παραπάνω έκφραση είναι απλώς πιο συμπαγής.

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