λογισμικό

    没有任何同级栏目
Γνώση Υπολογιστών >> λογισμικό >

Πώς μπορείτε να προσδιορίσετε εάν ένα κύτταρο στο Excel περιέχει αριθμό σε αντίθεση με τον τύπο;

Υπάρχουν διάφοροι τρόποι για να προσδιορίσετε εάν ένα κύτταρο Excel περιέχει έναν αριθμό που εισάγεται άμεσα σε αντίθεση με έναν αριθμό που προκύπτει από έναν τύπο:

1. Χρησιμοποιώντας τις λειτουργίες `isnumber` και` isformula ':

Αυτή είναι η πιο απλή και αξιόπιστη μέθοδος. Συνδυάστε αυτές τις λειτουργίες για να ελέγξετε και τις δύο συνθήκες:

* `isnumber (a1)`: Αυτή η συνάρτηση επιστρέφει `true` εάν το Cell A1 περιέχει έναν αριθμό (είτε εισάγεται απευθείας είτε το αποτέλεσμα ενός τύπου που αξιολογεί σε έναν αριθμό) και" ψευδής "διαφορετικά.

* `isformula (a1)`: Αυτή η συνάρτηση επιστρέφει `true` εάν το Cell A1 περιέχει μια φόρμουλα και` false 'διαφορετικά.

Για να ελέγξετε αν ένα κύτταρο περιέχει έναν αριθμό * που εισάγεται απευθείας *, χρειάζεστε και τα δύο `isnumber` για να είστε` true 'και `isformula` για να είναι` false':

`` `excel

=Και (isNumber (a1), όχι (isformula (a1)))

`` `

Αυτός ο τύπος θα επιστρέψει «αληθινό» μόνο εάν το Cell A1 περιέχει έναν αριθμό που πληκτρολογήθηκε απευθείας στο κύτταρο, που δεν υπολογίζεται με έναν τύπο. Τοποθετήστε αυτόν τον τύπο σε ένα άλλο κελί, αντικαθιστώντας το `A1` με το κελί που θέλετε να ελέγξετε.

2. Χρησιμοποιώντας τη λειτουργία `cell` (λιγότερο αξιόπιστη):

Η λειτουργία `Cell` μπορεί να παρέχει πληροφορίες σχετικά με τη μορφοποίηση και το περιεχόμενο ενός κυττάρου. Ωστόσο, είναι λιγότερο αξιόπιστο για αυτό το συγκεκριμένο καθήκον, διότι δεν μπορεί πάντα να διακρίνει με ακρίβεια μεταξύ ενός άμεσα εισαγόμενου αριθμού και ενός τύπου με αποτέλεσμα έναν αριθμό:

`` `excel

=Αν (κελί ("τύπος", a1) ="v", true, false)

`` `

Αυτό ελέγχει εάν ο τύπος κυττάρου είναι "V" (τιμή), η οποία * θα μπορούσε * να υποδείξει έναν άμεσο αριθμό εισαγωγής. Αλλά ένας τύπος που αξιολογεί σε έναν αριθμό θα επέστρεφε επίσης "V", έτσι αυτή η μέθοδος δεν είναι ανόητη.

3. VBA Macro (για πιο περίπλοκα σενάρια):

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

`` `vba

Sub CheckCellType ()

Dim Cell ως εύρος

Για κάθε κύτταρο στην περιοχή ("A1:A10") 'Ρύθμιση της εμβέλειας όπως απαιτείται

Αν είναι ιστόμινο (Cell.Value) και όχι Cell.hasformula τότε

Το Debug.print cell.address &"περιέχει έναν άμεσο αριθμό εισαγωγής."

Τέλος εάν

Επόμενο κελί

Τερματισμός

`` `

Αυτή η μακροοικονομική βρόχος μέσω των κυττάρων A1 έως A10. Οι έλεγχοι "Isnumeric` για έναν αριθμό και το` cell.hasformula` επαληθεύει αν είναι μια φόρμουλα. Το αποτέλεσμα εκτυπώνεται στο άμεσο παράθυρο (προβολή> άμεσο παράθυρο).

Η μέθοδος είναι η πιο αξιόπιστη και συνιστώμενη προσέγγιση Για τον προσδιορισμό εάν ένα κύτταρο περιέχει έναν απευθείας εισαγόμενο αριθμό στο Excel. Οι άλλες μέθοδοι παρέχονται για πληρότητα αλλά έχουν περιορισμούς.

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα