Πώς να εξαγάγετε μόνο αριθμούς από το κελί του Excel (7 εύκολοι τρόποι)

  • Μοιραστείτε Αυτό
Hugh West

Παρόλο που η Microsoft δεν έχει παράσχει έναν απλό τύπο ή σύνταξη για να εξάγει μόνο αριθμούς από το κελί του Excel, μπορούμε να ενσωματώσουμε ένα ευρύ φάσμα Τύποι του Excel για να φτιάξουμε μια ενιαία συνάρτηση που μπορεί να χρησιμοποιηθεί για την εξαγωγή αριθμών ή ψηφίων μόνο από τα κελιά του Excel. Σε αυτό το άρθρο, θα προσπαθήσουμε να δείξουμε και να εξηγήσουμε λεπτομερώς πώς μπορούμε να ανασύρουμε μόνο αριθμούς από τα κελιά με τους κατάλληλους τύπους κάτω από μερικά κριτήρια.

Κατεβάστε το βιβλίο ασκήσεων

Κατεβάστε δωρεάν το βιβλίο εξάσκησης που χρησιμοποιήσαμε για την προετοιμασία αυτού του άρθρου. Μπορείτε να εισάγετε τις τιμές κειμένου με αριθμούς στα επιλεγμένα κελιά και να βρείτε τα αποτελέσματα αμέσως μέσω των ενσωματωμένων τύπων.

Εξαγωγή αριθμών από Cell.xlsm

7 αποτελεσματικοί τρόποι εξαγωγής μόνο αριθμών από το κελί του Excel

Θα υπάρχει ένας κώδικας VBA, μια λειτουργία του Excel και πέντε πρακτικοί τύποι που θα σας βοηθήσουν να εξάγετε αριθμούς από ένα κελί. Όπως στην παρακάτω εικόνα, έχουμε κάποιους κώδικες που περιλαμβάνουν ψηφία και γράμματα όπου τα ψηφία υπάρχουν στην αρχή. Πρέπει να εξάγουμε μόνο αυτά τα ψηφία ή τους αριθμούς.

1. Εξαγωγή αριθμών από την αρχή ενός κειμένου

Σε αυτή την πρώτη μέθοδο, θα συνδυάσουμε το ΑΡΙΣΤΕΡΆ , SUM , LEN , και ΥΠΟΚΑΤΑΣΤΑΣΗ συναρτήσεις για να βγάλουμε αριθμούς από την αρχή μιας συμβολοσειράς κειμένου. Αρχικά, θα πληκτρολογήσουμε αυτόν τον τύπο στο κελί και στη συνέχεια, χρησιμοποιώντας η λαβή γεμίσματος , θα αντιγράψουμε αυτόν τον τύπο στα υπόλοιπα κελιά.

Βήματα:

  • Πρώτον, πληκτρολογήστε τον τύπο στο κελί C5 .

=LEFT(B5,SUM(LEN(B5)-LEN(SUBSTITUTE(B5,{"0","1","2","3","4","5","6","7","8","9"},""))))

  • Δεύτερον, πατήστε Εισάγετε το και θα λάβετε τον αριθμό 34 για τον πρώτο κωδικό.

  • Τρίτον, χρησιμοποιήστε το Λαβή πλήρωσης στη συνέχεια, για να γεμίσετε αυτόματα όλα τα άλλα κελιά της στήλης C .

🔎 Κατανομή τύπου

SUBSTITUTE(B5,{"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9″},"")

  • Εδώ, η ΥΠΟΚΑΤΑΣΤΑΣΗ θα βρει τα ψηφία (0-9) διαδοχικά και, αν τα βρει, θα αντικαταστήσει το ψηφίο αυτό στο κελί B5 με έναν κενό χαρακτήρα κάθε φορά. Έτσι, η συνάρτηση θα επιστρέφει ως- {"34DTXRF", "34DTXRF", "34DTXRF", "4DTXRF", "3DTXRF", "34DTXRF", "34DTXRF", "34DTXRF", "34DTXRF", "34DTXRF", "34DTXRF"}.

LEN(SUBSTITUTE(B5,{"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9″},""))

  • Το LEN καθορίζει τον αριθμό των χαρακτήρων σε ένα αλφαριθμητικό. Έτσι, εδώ, η συνάρτηση LEN η συνάρτηση θα μετρήσει όλους τους χαρακτήρες που βρίσκονται ξεχωριστά στα κείμενα μέσω της συνάρτησης ΥΠΟΚΑΤΑΣΤΑΣΗ Οι προκύπτουσες τιμές θα είναι εδώ στην περίπτωσή μας - {7,7,7,7,6,6,7,7,7,7,7,7,7}.

LEN(B5)-LEN(SUBSTITUTE(B5,{"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9″},"")))

  • Τώρα, αυτό το μέρος είναι η αφαίρεση από τον αριθμό των χαρακτήρων στο κελί B5 σε όλους τους άλλους αριθμούς χαρακτήρων που βρέθηκαν μεμονωμένα στο προηγούμενο τμήμα του τύπου. Έτσι, εδώ οι προκύπτουσες τιμές θα είναι - {0,0,0,0,1,1,0,0,0,0,0,0,0,0}.

SUM(LEN(B5)-LEN(SUBSTITUTE(B5,{"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9″},"")))

  • Το SUM η συνάρτηση θα αθροίσει απλώς όλες τις αφαιρεθείσες τιμές που βρέθηκαν &, οπότε το αποτέλεσμα θα είναι εδώ, 2 (0+0+0+1+1+0+0+0+0+0).

=LEFT(B5,SUM(LEN(B5)-LEN(SUBSTITUTE(B5,{"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9″},""))))

  • Και τώρα εδώ είναι το τελικό μέρος όπου το ΑΡΙΣΤΕΡΆ θα επιστρέψει τις τιμές με ακριβή αριθμό χαρακτήρων από τα αριστερά που βρέθηκαν στο προηγούμενο τμήμα του τύπου. Καθώς πήραμε την τιμή του αθροίσματος ως 2, η συνάρτηση ΑΡΙΣΤΕΡΆ συνάρτηση εδώ θα επιστρέψει μόνο 34 από το κείμενο 34DTXRF .

Σχετικά: Πώς να διαχωρίσετε αριθμούς στο Excel χρησιμοποιώντας τύπο (5 τρόποι)

2. Εξαγωγή αριθμών από τη δεξιά πλευρά ενός κειμένου

Σε αυτή την ενότητα, θα εξάγουμε τους αριθμούς ή τα ψηφία από τη δεξιά πλευρά της συμβολοσειράς κειμένου. Θα χρησιμοποιήσουμε την εντολή ΔΕΞΙΑ , MIN , και ΑΝΑΖΗΤΗΣΗ λειτουργίες εδώ.

Βήματα:

  • Αρχικά, στο σύνολο δεδομένων μας, αυτό που πρέπει να πληκτρολογήσουμε στο κελί C5 is-

=RIGHT(B5,LEN(B5) - MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, B5& "0123456789")) +1)

  • Στη συνέχεια, πατήστε Εισάγετε το και στη συνέχεια χρησιμοποιήστε το Χειρολαβή πλήρωσης για την αυτόματη συμπλήρωση των υπόλοιπων κελιών.

🔎 Κατανομή τύπου

B5& "0123456789″

  • Εδώ, συνδέουμε τις τιμές στο πεδίο B5 κύτταρο με 0123456789 με τη χρήση Αμπερσάντ (&) μεταξύ τους και θα πάρουμε την προκύπτουσα τιμή ως DTXRF340123456789.

SEARCH({0,1,2,3,4,5,6,7,8,9}, B5&”0123456789″)

  • Τώρα, η ΑΝΑΖΗΤΗΣΗ θα αναζητήσει όλα τα ψηφία (0-9) ένα προς ένα στην τιμή που προκύπτει από την προηγούμενη ενότητα και θα επιστρέψει τις θέσεις αυτών των 10 ψηφίων στους χαρακτήρες του DTXRF340123456789 Έτσι, εδώ οι τιμές που προκύπτουν θα είναι: {8,9,10,6,7,13,14,15,16,17}.

MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, B5&”0123456789″))

  • Το MIN Η συνάρτηση χρησιμοποιείται για την εύρεση του χαμηλότερου ψηφίου ή αριθμού σε έναν πίνακα. Έτσι, εδώ η ελάχιστη ή χαμηλότερη τιμή θα είναι- 6 από τον πίνακα {8,9,10,6,7,13,14,15,16,17} που βρέθηκε στο προηγούμενο τμήμα του τύπου.

LEN(B5) - MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, B5& "0123456789″)) +1)

  • Τώρα, ο αριθμός των χαρακτήρων στο B5 θα βρεθεί από το LEN Τότε θα αφαιρέσει την τιμή 6(που βρέθηκε στην τελευταία ενότητα) και στη συνέχεια θα επιστρέψει το αποτέλεσμα προσθέτοντας 1. Εδώ στην περίπτωσή μας, η τιμή που θα προκύψει θα είναι 2 (7-6+1) .

RIGHT(B5,LEN(B5) - MIN(SEARCH({0,1,2,3,4,5,6,7,8,9}, B5& "0123456789″) +1))

  • Το ΔΕΞΙΑ θα επιστρέψει τον καθορισμένο αριθμό χαρακτήρων από την τελευταία ή τη δεξιά πλευρά μιας συμβολοσειράς. Ακολουθώντας το αποτέλεσμα που βρέθηκε μέσω της διαδικασίας αφαίρεσης στην προηγούμενη ενότητα, εδώ η συνάρτηση ΔΕΞΙΑ θα εμφανίσει τους 2 τελευταίους χαρακτήρες από το κελί B5 , και αυτό θα είναι 34 .

Διαβάστε περισσότερα: Πώς να διαχωρίσετε αριθμούς σε ένα κελί στο Excel (5 μέθοδοι)

3. Εξαγωγή αριθμών από οποιοδήποτε μέρος μιας συμβολοσειράς κειμένου

Τώρα, εδώ είναι μια ευρεία λύση για όλες τις περιπτώσεις. Αυτή η μέθοδος θα βγάλει αριθμούς ή ψηφία από οποιαδήποτε θέση σε μια συμβολοσειρά κειμένου. Επιπλέον, θα χρησιμοποιήσουμε το TEXTJOIN , IFERROR , INDIRECT , MID και ΣΕΙΡΑ λειτουργίες σε αυτή τη μέθοδο.

Βήματα:

  • Πρώτον, πληκτρολογήστε τον τύπο στο κελί προορισμού σας ως εξής-

=TEXTJOIN("",TRUE,IFERROR((MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)*1),""))

  • Στη συνέχεια, αν χρησιμοποιείτε Excel 2016 ή υψηλότερη έκδοση και στη συνέχεια πατήστε Εισάγετε το , διαφορετικά πατήστε Ctrl+Shift+Enter για να λάβετε το αποτέλεσμα για αυτόν τον τύπο πίνακα.
  • Μετά από αυτό το βήμα, συμπληρώστε αυτόματα άλλα κελιά χρησιμοποιώντας το Λαβή πλήρωσης και τελειώσατε.

🔎 Κατανομή τύπου

INDIRECT("1:"&LEN(B5))

  • Το INDIRECT χρησιμοποιείται για την αποθήκευση ενός πίνακα τιμών κελιών ως κείμενο αναφοράς. Εδώ η τελεία ampersand (&?) η εντολή συνδέει το μήκος των χαρακτήρων του κελιού B5 με ελλιπή σύνταξη εύρους (1:) .
  • Έτσι, εδώ η INDIRECT θα αποθηκεύσει όλους τους αριθμούς μεταξύ 1 και του μήκους των χαρακτήρων στο κελί B5 ως κείμενο αναφοράς.

ROW(INDIRECT("1:"&LEN(B5)))

  • Το ΣΕΙΡΑ συνήθως λέει τον αριθμό της γραμμής ενός κελιού. Αλλά εδώ στη συνάρτηση INDIRECT συνάρτηση, καθώς δεν έχει αναφερθεί κανένα κελί αναφοράς, σε αυτή την περίπτωση, η ΣΕΙΡΑ θα εξάγει όλες τις τιμές ή τους αριθμούς από τα κείμενα αναφοράς που είναι αποθηκευμένα στο INDIRECT λειτουργία.
  • Τώρα, για το 1ο κελί B5 , οι προκύπτουσες τιμές μέσω αυτών των ΣΕΙΡΑ και INDIRECT Οι συναρτήσεις θα είναι: {1;2;3;4;5;6;7;8;9}.

(MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)))

  • Το MID θα σας επιτρέψει να προσδιορίσετε τους χαρακτήρες από τη μέση μιας συμβολοσειράς κειμένου, δεδομένης μιας αρχικής θέσης & μήκους.
  • Έτσι, εδώ και για τις 9 θέσεις που βρέθηκαν στην προηγούμενη ενότητα, η MID η συνάρτηση τώρα θα εμφανίσει όλους τους χαρακτήρες έναν προς έναν για κάθε θέση &- έτσι θα επιστρέψει τις τιμές ως- {"1″; "9″;" "; "D"; "D"; "X"; "2″; "M"; "N"}.

IFERROR((MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)*1),"")

  • Τώρα, η IFERROR είναι μια λογική συνάρτηση που θα καθορίσει αν μια συμβολοσειρά είναι αριθμός ή κάτι άλλο. Αν δεν αναγνωρίσει μια συμβολοσειρά με αριθμούς ή ψηφία, τότε θα επιστρέψει την τιμή με μια καθορισμένη εντολή κειμένου.
  • Στην περίπτωσή μας, όλες οι τιμές που βρέθηκαν στην τελευταία ενότητα θα πολλαπλασιαστούν με το 1, και όταν τα αποτελέσματα επιστρέφονται ως σφάλματα τιμών για γράμματα ή τιμές κειμένου που δεν μπορούν να πολλαπλασιαστούν, τα IFERROR Η συνάρτηση θα μετατρέψει τα σφάλματα σε κενές συμβολοσειρές. Έτσι, οι τιμές που θα προκύψουν θα είναι τότε- {1;9;"";"";"";"";"";2;"";""}.

=TEXTJOIN("",TRUE,IFERROR((MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)*1),""))

  • Και τώρα το τελικό μέρος θα εκτελεστεί μέσω του TEXTJOIN Η συνάρτηση αυτή χρησιμοποιείται για τη συνένωση ή την ένωση δύο συμβολοσειρών με ένα καθορισμένο διαχωριστικό.
  • Έτσι, οι προκύπτουσες τιμές που βρήκαμε στην προηγούμενη ενότητα θα ενωθούν τώρα μαζί με αυτό TEXTJOIN Και έτσι θα πάρουμε τον αριθμό 192.

Διαβάστε περισσότερα: Πώς να εξαγάγετε πολλαπλούς αριθμούς από συμβολοσειρά στο Excel (6 μέθοδοι)

4. Φωλιασμός πολλαπλών συναρτήσεων για την εξαγωγή μόνο αριθμών

Τώρα, θα σας δείξουμε έναν άλλο τύπο για να εξάγετε μόνο αριθμούς από οποιαδήποτε θέση από ένα κελί του Excel. Αν και μπορεί να φαίνεται αρκετά περίπλοκος, θα αναλύσουμε ολόκληρο τον τύπο και θα προσπαθήσουμε να εξηγήσουμε όλες τις συμπαγείς συναρτήσεις με ευκολία. Επιπλέον, θα χρησιμοποιήσουμε την ΕΆΝ , ΜΕΓΑΛΗ , INDEX , SUMPRODUCT , και ISNUMBER συναρτήσεις σε αυτόν τον τύπο.

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

=IF(SUM(LEN(B5)-LEN(SUBSTITUTE(B5, {"0","1","2","3","4","5","6","7","8","9"}, "")))>0, SUMPRODUCT(MID(0&B5, LARGE(INDEX(ISNUMBER(--MID(B5,ROW(INDIRECT("$1:$"&LEN(B5))),1))* ROW(INDIRECT("$1:$"&LEN(B5))),0), ROW(INDIRECT("$1:$"&LEN(B5))))+1,1) * 10^ROW(INDIRECT("$1:$"&LEN(B5)))/10),"")

  • Μετά από αυτό, πρέπει να πατήσετε Εισάγετε το μόνο αφού πληκτρολογήσετε ολόκληρο τον τύπο και τελειώσατε.

🔎 Κατανομή τύπου

Πριν ξεκινήσουμε την ανάλυση αυτού του συμπαγούς τύπου, μπορούμε να τον διαχωρίσουμε σε μερικά μέρη όπως-

=IF(A>0, SUMPRODUCT(B 1 *C 1 , B 2 *C 2 , ..........B n C n ),"")

Αυτή η σύνταξη σημαίνει ότι αν A είναι μεγαλύτερο του 0, τότε όλα τα προϊόντα των B n και C n θα προκύψει το τελικό αποτέλεσμα. Και αν A δεν είναι μεγαλύτερο από 0, τότε το αποτέλεσμα θα επιστρέψει ως ένα κενό ή κενό κελί.

  • A = SUM(LEN(B5)-LEN(SUBSTITUTE(B5, {"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9"}, ""
  • B = MID(0&B5, LARGE(INDEX(ISNUMBER(-MID(B5,ROW(INDIRECT("$1:$"&LEN(B5))),1))* ROW(INDIRECT("$1:$"&LEN(B5))),0), ROW(INDIRECT("$1:$"&LEN(B5))))+1,1)
  • C = 10^ROW(INDIRECT("$1:$"&LEN(B5)))/10),""

Κατανομή του μέρους Α = SUM(LEN(B5)-LEN(SUBSTITUTE(B5, {"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9"}, ""

SUBSTITUTE(B5, {"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9"}, "")

  • Το ΥΠΟΚΑΤΑΣΤΑΣΗ θα βρει όλα τα ψηφία (0-9) ένα προς ένα στο κείμενο 19 DDX2MN κάθε φορά και θα αντικαταστήσει αυτά τα ψηφία με μια κενή συμβολοσειρά στις θέσεις των ψηφίων.
  • Έτσι, οι προκύπτουσες τιμές σε έναν πίνακα θα είναι- {"19 DDX2MN", "9 DDX2MN", "19 DDXMN", "19 DDX2MN", "19 DDX2MN", "19 DDX2MN", "19 DDX2MN", "19 DDX2MN", "19 DDX2MN", "19 DDX2MN", "1 DDX2MN"}.

LEN(SUBSTITUTE(B5, {"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9"}, ""))

  • Το LEN η συνάρτηση θα μετρήσει τώρα τον αριθμό των χαρακτήρων σε όλες τις τιμές συμβολοσειράς που λαμβάνονται από την προηγούμενη ενότητα. Έτσι, η συνάρτηση αυτή θα επιστρέψει ως- {9,8,8,8,9,9,9,9,9,9,9,9,8}.

LEN(B5)-LEN(SUBSTITUTE(B5, {"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9"}, ""))

  • Τώρα σε αυτό το μέρος του τύπου, ένας αριθμός χαρακτήρων στο κελί B5 θα αφαιρέσει όλους τους αριθμούς που βρέθηκαν στην προηγούμενη ενότητα. Οι προκύπτουσες τιμές θα είναι τότε- {0,1,1,0,0,0,0,0,0,0,0,0,1}.

SUM(LEN(B5)-LEN(SUBSTITUTE(B5, {"0″, "1″, "2″, "3″, "4″, "5″, "6″, "7″, "8″, "9"}, "")))

  • Με τη βοήθεια του SUM οι τιμές μέσα στον πίνακα που βρέθηκε στην τελευταία ενότητα θα αθροίσουν 3 (0+1+1+0+0+0+0+0+0+0+0+0+1).
  • Έτσι, σύμφωνα με το πρώτο μέρος του τύπου μας, A>0 (3>0) Τώρα, θα προχωρήσουμε στο επόμενο μέρος της ανάλυσης.

Κατανομή του μέρους Β = MID(0&B5, LARGE(INDEX(ISNUMBER(-MID(B5,ROW(INDIRECT("$1:$"&LEN(B5))),1))* ROW(INDIRECT("$1:$"&LEN(B5))),0), ROW(INDIRECT("$1:$"&LEN(B5))))+1,1)

INDIRECT("$1:$"&LEN(B5))

  • Το INDIRECT συνάρτηση εδώ θα αποθηκεύσει τις τιμές των συμβολοσειρών ως αναφορά στον πίνακα. Μέσα στην παρένθεση, η τελεία ampersand (&?) εντολή θα ενώσει τον αριθμό των χαρακτήρων που βρέθηκαν στο κελί B5 με τη σύνταξη Range of cells'. Αυτό σημαίνει ότι από το 1 έως τον αριθμό των χαρακτήρων που ορίζονται, ο καθένας θα αποθηκεύεται ως αναφορά σε πίνακα.

ROW(INDIRECT("$1:$"&LEN(B5)))

  • Τώρα, αυτό ΣΕΙΡΑ θα βγάλει όλους τους αριθμούς από τον πίνακα και τις προκύπτουσες τιμές για το κελί B5 θα είναι: {1;2;3;4;5;6;7;8;9}.

MID(B5,ROW(INDIRECT("$1:$"&LEN(B5))),1)

  • Σε αυτό το μέρος του τύπου, το MID θα εκφράσει όλους τους χαρακτήρες από το κελί B5 με βάση όλες τις θέσεις που βρέθηκαν ως αριθμοί στο προηγούμενο τμήμα. Έτσι, οι εξαγόμενες τιμές θα βρεθούν μετά από αυτό το τμήμα- {"1″; "9″;" "; "D"; "D"; "X"; "2″; "M"; "N"}.

ISNUMBER(-MID(B5,ROW(INDIRECT("$1:$"&LEN(B5))),1))

  • Όπως ISNUMBER είναι μια λογική συνάρτηση, θα καθορίσει ξεχωριστά αν οι τιμές που βρέθηκαν στο προηγούμενο τμήμα είναι αριθμητικές συμβολοσειρές ή όχι. Αν ναι, τότε θα επιστρέψει ως ΑΛΗΘΙΝΟ , αλλιώς, θα εμφανιστεί ως FALSE .
  • Έτσι, στην περίπτωσή μας, το αποτέλεσμα θα είναι: {ΑΛΗΘΕΙΑ;ΑΛΗΘΕΙΑ;ΨΕΥΔΕΣ;ΨΕΥΔΕΣ;ΨΕΥΔΕΣ;ΨΕΥΔΕΣ;ΑΛΗΘΕΙΑ;ΨΕΥΔΕΣ;ΨΕΥΔΕΣ}.

INDEX(ISNUMBER(-MID(B5,ROW(INDIRECT("$1:$"&LEN(B5))),1))*ROW(INDIRECT("$1:$"&LEN(B5))),0)

  • Αν παρατηρήσετε μέσα στην παραπάνω συνάρτηση, ένα διπλό παύλα, γνωστό ως Διπλό μοναδιαίο Χρησιμοποιείται για τη μετατροπή όλων των λογικών τιμών σε αριθμητικές συμβολοσειρές- 1(TRUE) ή 0(FALSE) . Τώρα, το INDEX η συνάρτηση θα επιστρέψει αυτό το αποτέλεσμα ως- {1;1;0;0;0;0;0;1;0;0;0}.
  • Στη συνέχεια, οι προκύπτουσες τιμές θα πολλαπλασιαστούν με τις τιμές που λαμβάνονται από το ΣΕΙΡΑ μέσα στον πίνακα και το αποτέλεσμα θα είναι {1;2;0;0;0;0;0;0;7;0;0;0}.

LARGE(INDEX(ISNUMBER(-MID(B5,ROW(INDIRECT("$1:$"&LEN(B5))),1))*ROW(INDIRECT("$1:$"&LEN(B5))),0), ROW(INDIRECT("$1:$"&LEN(B5))))

  • Το ΜΕΓΑΛΗ συνάρτηση θα αναδιατάξει τώρα τις μεγαλύτερες τιμές από τον πίνακα σύμφωνα με τις θέσεις που βασίζονται στους αριθμούς που βρέθηκαν στο ΣΕΙΡΑ Οι τιμές που προκύπτουν για αυτό το τμήμα του τύπου θα είναι: {7;2;1;0;0;0;0;0;0;0;0;0;0;0}.

MID(0&B5, LARGE(INDEX(ISNUMBER(-MID(B5,ROW(INDIRECT("$1:$"&LEN(B5))),1))*ROW(INDIRECT("$1:$"&LEN(B5))),0), ROW(INDIRECT("$1:$"&LEN(B5))))+1,1)

  • Τώρα, αυτό το μέρος της συνάρτησης θα συνδέσει 0 με τα κείμενα στο κελί B5 Τότε θα προσθέσει 1 ξεχωριστά με όλους τους αριθμούς που βρέθηκαν στην τελευταία ενότητα και να δείξει τους χαρακτήρες από B5 κελί με βάση τις καθορισμένες αριθμητικές θέσεις.
  • Έτσι, το αποτέλεσμά μας από αυτό το τμήμα θα είναι- {"2″; "9″; "1″; "0″; "0″; "0″; "0″; "0″; "0″; "0″; "0"}.

Κατανομή του μέρους Γ = (10^ROW(INDIRECT("$1:$"&LEN(B5)))/10),"")

  • Αυτό το μέρος θα προσδιορίσει τις δυνάμεις του 10 &- αποθηκεύστε τις μέσα στον πίνακα. Τα ψηφία των δυνάμεων είναι οι αριθμοί που βρέθηκαν από το ΣΕΙΡΑ λειτουργία προηγουμένως.
  • Αυτό το μέρος του τύπου θα επιστρέψει τις τιμές {1;10;100;1000;10000;100000;1000000;10000000;100000000}.

Πολλαπλασιασμός του B n και C n

  • Τώρα, οι προκύπτουσες τιμές από τις δύο τελευταίες μεγάλες αναλύσεις των Β και Γ θα πολλαπλασιαστούν τώρα μέσα στον πίνακα. Στη συνέχεια, τα προϊόντα που θα βρεθούν από τους πολλαπλασιασμούς θα είναι- {2;90;100;0;0;0;0;0;0;0;0}.
  • Και τέλος, το SUMPRODUCT θα αθροίσει αυτές τις τιμές που βρίσκονται στον πίνακα. Έτσι, το τελικό μας αποτέλεσμα θα είναι 192 (2+90+100+0+0+0+0+0+0) , που είναι οι αριθμοί που εξάγονται από το κελί B5 .

Διαβάστε περισσότερα: Πώς να διαχωρίζετε κείμενο και αριθμούς στο Excel (4 εύκολοι τρόποι)

5. Εξαγωγή πενταψήφιων αριθμών από συμβολοσειρά

Θα χρησιμοποιήσουμε έναν άλλο τύπο για να εξάγουμε πενταψήφιους αριθμούς από οποιοδήποτε μέρος μιας συμβολοσειράς στο Excel. Θα χρησιμοποιήσουμε τον τύπο CONCAT και SEQUENCE Επιπλέον, αλλάξαμε ελαφρώς το σύνολο των δεδομένων μας για τη μέθοδο αυτή.

Βήματα:

  • Πρώτον, επιλέξτε την περιοχή κελιών C5:C12 .
  • Δεύτερον, πληκτρολογήστε τον ακόλουθο τύπο.

=CONCAT(IFERROR(0+MID(B5,SEQUENCE(LEN(B5)),1),""))

  • Τέλος, πατήστε Ctrl+Enter .

🔎 Κατανομή τύπου

  • LEN(B5)
    • Έξοδος: 11 .
    • Αυτή η συνάρτηση επιστρέφει το μήκος της συμβολοσειράς.
  • SEQUENCE(11)
    • Output: {1;2;3;4;5;6;7;8;9;10;11} .
    • Αυτή η συνάρτηση επιστρέφει τους πρώτους έντεκα αριθμούς.
  • MID(B5,{1;2;3;4;5;6;7;8;9;10;11},1)
    • Έξοδος: {"1″-"9″-" ""D""D""X""2″-"M""N""3″"3″} .
    • Χρησιμοποιώντας αυτό το τμήμα, παίρνουμε τους μεμονωμένους χαρακτήρες από το αλφαριθμητικό.
  • 0+{"1″; "9″;" "; "Δ"; "Δ"; "X"; "2″; "Μ"; "Ν"; "3″; "3″}
    • Έξοδος: {1;9;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;2;#VALUE!;#VALUE!;#VALUE!;3;3} .
    • Όταν προσθέτουμε το μηδέν σε μια συμβολοσειρά, θα επιστρέψει ένα σφάλμα.
  • IFERROR({1;9;#ΤΙΜΉ!;#ΤΙΜΉ!;#ΤΙΜΉ!;#ΤΙΜΉ!;#ΤΙΜΉ!;2;#ΤΙΜΉ!;#ΤΙΜΉ!;3;3},"")
    • Έξοδος: {1;9;"";"";"";"";"";2;"";"";"";3;3} .
    • Παίρνουμε κενό για όλες τις τιμές σφάλματος.
  • CONCAT({1;9;"";"";"";"";"";2;"";"";3;3})
    • Έξοδος: 19233 .
    • Τέλος, προσθέτουμε όλες τις τιμές για να εξάγουμε μόνο πενταψήφιους αριθμούς.

6. Χρήση του Flash Fill για την εξαγωγή αριθμών εντός ενός εύρους τιμών

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

Βήματα:

  • Αρχικά, πληκτρολογήστε τους αριθμούς χειροκίνητα στο κελί C5 .

  • Στη συνέχεια, αρχίστε να πληκτρολογείτε τους αριθμούς από το κελί B6 στο κύτταρο C6 και το Excel θα αναγνωρίσει αυτόματα το μοτίβο.
  • Τέλος, πατήστε Εισάγετε το .

Σημειώσεις: Αυτή η μέθοδος έχει ορισμένα μειονεκτήματα, γι' αυτό και δεν συνιστάται για όλες τις περιπτώσεις που πρέπει να εξάγετε αριθμούς από συμβολοσειρές κειμένου. Συμπλήρωμα φλας συνήθως ακολουθεί ένα μοτίβο από τα κελιά μιας στήλης ή μιας περιοχής. Έτσι, οι πρώτες 2 ή 3 εξαιρέσεις ή υπολογισμοί πρέπει να γίνουν χειροκίνητα για να βοηθήσουν το Excel να απορροφήσει το κοινό μοτίβο των τιμών που προκύπτουν. Αλλά μερικές φορές, δεν ακολουθεί το ακριβές μοτίβο που χρειαζόμαστε και, έτσι, θα ακολουθήσει το δικό του μοτίβο και θα σας δώσει ένα λάθος αποτέλεσμα.

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

Διαβάστε περισσότερα: Πώς να εξαγάγετε αριθμούς μετά από ένα συγκεκριμένο κείμενο στο Excel (2 κατάλληλοι τρόποι)

7. Εφαρμογή κώδικα VBA για την εξαγωγή μόνο αριθμών από το κελί του Excel

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

Βήματα:

  • Πρώτον, Πατήστε ALT+F11 για να ανοίξετε το VBA παράθυρο.
  • Στη συνέχεια, από το Εισαγωγή επιλέξτε την καρτέλα Ενότητα Θα εμφανιστεί ένα νέο παράθυρο ενότητας όπου θα πληκτρολογήσετε τους κωδικούς.

  • Τρίτον, μέσα στην ενότητα σας, επικολλήστε τους ακόλουθους κώδικες μετά την αντιγραφή.
 Option Explicit Sub ExtractNumbersOnly() Dim CellValue As Range Dim InBx1 As Range Dim InBx2 As Range Dim NumChar As Integer Dim StartChar As Integer Dim XtrNum As String Dim DBxName1 As String Dim DBxName2 As String Dim Iteration As Integer DBxName1 = "Επιλογή δεδομένων εισόδου" DBxName2 = "Επιλογή κελιών εξόδου" Set InBx1 = Application.InputBox("Input Range of Text Cells:", _ DBxName1, "", Type:=8)If TypeName(InBx1) = "Nothing" Then Exit Sub Set InBx2 = Application.InputBox("Select Output Cells:", _ DBxName2, "", Type:=8) If TypeName(InBx2) = "Nothing" Then Exit Sub Iteration = 0 XtrNum = "" For Each CellValue In InBx1 Iteration = Iteration + 1 NumChar = Len(CellValue) For StartChar = 1 To NumChar If IsNumeric(Mid(CellValue, StartChar, 1)) Then XtrNum = XtrNum & Mid(CellValue,StartChar, 1) End If Next StartChar InBx2.Item(Iteration) = XtrNum XtrNum = "" Next CellValue End Sub 

  • Στη συνέχεια, πατήστε F5 για να εκτελέσετε τον κώδικα. Ένα παράθυρο διαλόγου με το όνομα " Επιλογή δεδομένων εισόδου " θα εμφανιστεί.
  • Στη συνέχεια, επιλέξτε όλα τα κελιά κειμένου (δηλ. B5:B12 ) και πατήστε OK .

  • Μετά από αυτό, ένα άλλο παράθυρο διαλόγου με το όνομα " Επιλογή κυψέλης εξόδου " θα εμφανιστεί όπου θα πρέπει να επιλέξετε ένα συγκεκριμένο κελί ή μια σειρά κελιών για να δείτε τα δεδομένα ή τις τιμές εξόδου.
  • Τέλος, επιλέξτε την περιοχή κελιών C5:C12 και πατήστε Εισάγετε το .

  • Κατά συνέπεια, θα δείτε τους αριθμούς που εξάγονται από τα κείμενα ταυτόχρονα. Έτσι, θα ολοκληρώσουμε τις επτά γρήγορες μεθόδους για την εξαγωγή αριθμών μόνο από το κελί του Excel.

🔎 Ανάλυση κώδικα VBA

Δήλωση παραμέτρων

 Option Explicit Sub ExtractNumbersOnly() Dim cellValue As Range Dim InBx1 As Range Dim InBx2 As Range Dim NumChar As Integer Dim StartChar As Integer Dim XtrNum As String Dim DBxName1 As String Dim DBxName2 As String Dim Iteration As Integer DBxName1 = "Επιλογή δεδομένων εισόδου" DBxName2 = "Επιλογή κελιών εξόδου" 
  • Εδώ σε αυτό το μέρος αρχικά, δηλώνουμε όλες τις παραμέτρους μας ως ακέραιους αριθμούς, τιμές συμβολοσειρών ή περιοχές κελιών. Στη συνέχεια δίνουμε τα ονόματα των πλαισίων διαλόγου μας με "Επιλογή δεδομένων εισόδου" και "Επιλογή κυψέλης εξόδου" .

Καθορισμός των τύπων εισόδων & εξόδων για τα πλαίσια διαλόγου

 Set InBx1 = Application.InputBox("Input Range of Text Cells:", _ DBxName1, "", Type:=8) If TypeName(InBx1) = "Nothing" Then Exit Sub Set InBx2 = Application.InputBox("Select Output Cells:", _ DBxName2, "", Type:=8) If TypeName(InBx2) = "Nothing" Then Exit Sub Iteration = 0 XtrNum = "" 
  • Τώρα καθορίζουμε τις παραμέτρους και τους τύπους τους για τα πλαίσια διαλόγου. Εδώ, η προσθήκη Type:=8 σημαίνει ότι τα δεδομένα εισόδου και εξόδου θα αποτελούνται από κελιά αναφοράς ή μια σειρά κελιών.
  • Ορίζουμε επίσης ότι αν δεν βρεθούν δεδομένα εισόδου, τότε η υπορουτίνα θα σταματήσει. Με την αναφορά αυτής της μακροεντολής, η υπορουτίνα δεν θα διακόψει τη λειτουργία της λόγω έλλειψης δεδομένων, αλλά θα σταματήσει να λειτουργεί.

Συνδυάζοντας τις συναρτήσεις μέσα στον κώδικα Βρόχοι για επαναλήψεις

 For Each cellValue In InBx1 Iteration = Iteration + 1 NumChar = Len(cellValue) For StartChar = 1 To NumChar If IsNumeric(Mid(cellValue, StartChar, 1)) Then XtrNum = XtrNum & Mid(cellValue, StartChar, 1) End If Next StartChar InBx2.Item(Iteration) = XtrNum XtrNum = "" Next cellValue End Sub 
  • Τέλος, αυτό είναι το πιο κρίσιμο μέρος όπου εφαρμόζουμε τις συναρτήσεις ή τους τύπους που πρέπει να αναθέσουμε στα κείμενα για να βρούμε τις τιμές που προκύπτουν από τις συμβολοσειρές.
  • Ένα από τα σημαντικότερα πλεονεκτήματα της κωδικοποίησης μιας συνάρτησης για το Excel είναι ότι δεν είναι απαραίτητο να πληκτρολογήσετε έναν μεγάλο τύπο, όπως έπρεπε να κάνουμε στις προηγούμενες μεθόδους, καθώς η VBA διαθέτει ενσωματωμένες εντολές για τη χρήση βρόχων For ή While, όπου η επανάληψη για κάθε λεπτομέρεια σε μια συμβολοσειρά κειμένου μπορεί να εκτελεστεί χωρίς καμία ταλαιπωρία.

Διαβάστε περισσότερα: Πώς να διαχωρίσετε αριθμούς από κείμενο στο Excel VBA (3 μέθοδοι)

Συμπέρασμα

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

Αν βρείτε άλλες συναρτήσεις ή τύπους που θα έπρεπε να είχαμε προσθέσει εδώ, τότε ενημερώστε μας με τα πολύτιμα σχόλιά σας. Ή μπορείτε να ρίξετε μια ματιά στα πιο κατατοπιστικά και ενδιαφέροντα άρθρα μας σχετικά με τις συναρτήσεις του Excel σε αυτόν τον ιστότοπο.

Ο Hugh West είναι ένας εξαιρετικά έμπειρος εκπαιδευτής και αναλυτής του Excel με πάνω από 10 χρόνια εμπειρίας στον κλάδο. Είναι κάτοχος πτυχίου Λογιστικής και Χρηματοοικονομικής και μεταπτυχιακού στη Διοίκηση Επιχειρήσεων. Ο Hugh έχει πάθος για τη διδασκαλία και έχει αναπτύξει μια μοναδική προσέγγιση διδασκαλίας που είναι εύκολο να ακολουθηθεί και να κατανοηθεί. Οι εξειδικευμένες γνώσεις του στο Excel έχουν βοηθήσει χιλιάδες φοιτητές και επαγγελματίες παγκοσμίως να βελτιώσουν τις δεξιότητές τους και να διαπρέψουν στην καριέρα τους. Μέσω του ιστολογίου του, ο Hugh μοιράζεται τις γνώσεις του με τον κόσμο, προσφέροντας δωρεάν μαθήματα Excel και διαδικτυακή εκπαίδευση για να βοηθήσει άτομα και επιχειρήσεις να αξιοποιήσουν πλήρως τις δυνατότητές τους.