Σπίτι Κοινωνική Media Κατανόηση της λειτουργίας VBA IsDate του Excel - dummies

Κατανόηση της λειτουργίας VBA IsDate του Excel - dummies

Βίντεο: Κατανόηση των Μυστηρίων του Θεού (24 Μαι 1998) 2025

Βίντεο: Κατανόηση των Μυστηρίων του Θεού (24 Μαι 1998) 2025
Anonim

Η λειτουργία IsDate της VBA υποτίθεται ότι σας λέει αν μια συμβολοσειρά κειμένου μπορεί να ερμηνευτεί ως ημερομηνία. Για παράδειγμα, όλες οι ακόλουθες εκφράσεις αξιολογούνται ως True:

IsDate ("5/25/2015") IsDate ("16 Ιανουαρίου") IsDate ("12-1" IsDate ("2/30") IsDate ("30/2")

Στα δύο τελευταία παραδείγματα, παρατηρήστε ότι το IsDate δεν είναι επιλεκτικό για τη σειρά της ημέρας και του μήνα. Και οι δύο αυτές συμβολοσειρές θα μπορούσαν να ερμηνευτούν ως ημερομηνία, έτσι IsDate επιστρέφει True (ανεξάρτητα από τις ρυθμίσεις μορφής ημερομηνίας συστήματος).

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

Η ημερομηνία VBA λειτουργεί με IsDate, Format, CDate και CVDate χρησιμοποιώντας μια λειτουργία που βρίσκεται στο OLE Automation (OleAut32.dll). Αυτή η λειτουργία αναζητά όλες τις πιθανές μορφές ημερομηνίας, ξεχωρίζοντας κάθε μία από τις διαχωρισμένες τιμές στη συμβολοσειρά που αντιπροσωπεύει την ημερομηνία και επιστρέφει μια τιμή Boolean που δηλώνει εάν η είσοδος μπορεί να αναπαρασταθεί ως ημερομηνία.

Αυτό είναι σημαντικό να θυμάστε όταν χρησιμοποιείτε τη λειτουργία για να ερμηνεύσετε μια ημερομηνία που περιέχει ένα διψήφιο έτος. Οι διαφορετικοί τόποι χρησιμοποιούν διαφορετικές μορφές ημερομηνίας (δηλαδή, mm / dd / yy, yy / mm / dd, " DD MMM YY " , " YY MMM DD " και ούτω καθεξής) και ως εκ τούτου η λειτουργία προσπαθεί τα ψηφία σε όλες τις θέσεις έως ότου η λειτουργία βρει μια έγκυρη ημερομηνία ή εξαντλήσει όλες τις δυνατότητες.

Μόνο επειδή η IsDate αναγνωρίζει μια συμβολοσειρά ως ημερομηνία, δεν σημαίνει ότι η συμβολοσειρά μπορεί να μετατραπεί αξιόπιστα σε μια ημερομηνία. Σε ορισμένες περιπτώσεις, το αποτέλεσμα είναι διφορούμενο. Για παράδειγμα, τι γίνεται με αυτή την έκφραση;

IsDate ("29-Φεβ-01")

29 Φεβρουαρίου 2001 δεν είναι έγκυρη ημερομηνία. Ωστόσο, αυτή η έκφραση επιστρέφει True επειδή η 1η Φεβρουαρίου 1929 (και 2 Ιανουαρίου 1929) είναι έγκυρες ημερομηνίες. Και έτσι είναι οι ίδιες ημερομηνίες το 2029.

Μια αναζήτηση για την τεκμηρίωση του IsDate ήρθε κενή. Με βάση τις δοκιμές, το IsDate δέχεται οποιοδήποτε από τα παρακάτω ως χαρακτήρες διαχωρισμού: μια κάθετο (/), ένα παύλα (-), ένα κόμμα (,), μια τελεία (.) Και ένα κενό.

Επομένως, όλες οι ακόλουθες εκφράσεις επιστρέφουν αληθινά:

IsDate ("5. 1") IsDate ("30 6") IsDate (" τότε υπάρχει αυτή η ανωμαλία: Οι ακόλουθες εκφράσεις επιστρέφουν True:

IsDate ("5. 1. 5") IsDate ("5. 1. 05")

Ωστόσο, ανεξήγητα, αυτή η έκφραση επιστρέφει False:

IsDate ("5. 1. 2005")

Υποθέστε ότι έχετε δημιουργήσει ένα UserForm με InputBox όπου ο χρήστης εισάγει μια ημερομηνία. Θα πρέπει να είναι σαφές ότι η χρήση του IsDate για την επικύρωση της καταχώρισης δεν είναι πολύ αξιόπιστη.

Τα πράγματα γίνονται ακόμα πιο συγκεχυμένα όταν συνειδητοποιείτε ότι το IsDate καλύπτει επίσης τις τιμές του χρόνου. (Δεν υπάρχει καμία αντίστοιχη λειτουργία IsTime.) Έτσι, όλες οι ακόλουθες εκφράσεις επιστρέφουν True:

IsDate ("4: 45") IsDate ("4 45") IsDate "IsDate (" 23: 59 ")

Αυτές οι εκφράσεις επιστρέφουν λανθασμένες:

IsDate (" 4: 60 ") IsDate (" παρουσιάζουν όλες αυτές τις ιδιορρυθμίες όταν περάσετε ένα όριο εύρους. Για παράδειγμα:

IsDate (Range ("A1"))

Φαίνεται ότι το IsDate είναι απόλυτα αξιόπιστο για τον προσδιορισμό κελιών που περιέχουν ημερομηνία ή χρόνο. Δεν προσδιορίζει, για παράδειγμα, ένα κελί που περιέχει 5. 1 ως ημερομηνία. Εάν ο κώδικάς σας χρειάζεται να καθορίσει αν μια συμβολοσειρά μπορεί να ερμηνευτεί ως ημερομηνία, η καλύτερη λύση είναι να τοποθετήσετε αυτήν τη συμβολοσειρά σε ένα κελί και στη συνέχεια να γράψετε κώδικα για να ελέγξετε τα περιεχόμενα των κυττάρων.

Κατανόηση της λειτουργίας VBA IsDate του Excel - dummies

Η επιλογή των συντακτών

Πώς να μοιράζεστε τα Spotify Tracks στο Android - ανδρείκελα

Πώς να μοιράζεστε τα Spotify Tracks στο Android - ανδρείκελα

Android, πιέζετε και κρατάτε πατημένο ένα κομμάτι για να εμφανιστεί το αναδυόμενο μενού Επιλογές, το οποίο διαθέτει δύο επιλογές κοινής χρήσης: Share Track: Πατήστε για να εμφανιστεί ένα αναδυόμενο παράθυρο Share Track, το οποίο χρησιμοποιεί την ενσωματωμένη δυνατότητα κοινής χρήσης Android και παραθέτει όλα εφαρμογές που έχετε εγκαταστήσει ...

Πώς να μοιραστείτε το Spotify Username - dummies

Πώς να μοιραστείτε το Spotify Username - dummies

Πριν από τον Σεπτέμβριο 2011 δικό του εύκολο να θυμάστε το όνομα χρήστη Spotify. Όμως, οι Spotify newbies, οι οποίοι συνδέονται με το Facebook, λαμβάνουν αυτόματα ένα άσχημο αριθμητικό όνομα χρήστη, όπως το 111035183. Αυτό το όνομα χρήστη, όσο δεν φαίνεται να είναι τόσο ελκυστικό, απαιτείται ακόμα για τη δημοσιοποίηση του προφίλ Spotify. Ένας τρόπος για να βρούμε ...

Πώς να κάνετε Shuffle Playlists στο Spotify Mobile - ανδρείκελα

Πώς να κάνετε Shuffle Playlists στο Spotify Mobile - ανδρείκελα

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

Η επιλογή των συντακτών

Ζουν πνευματικά σε συνειδητό κόσμο - Dummies

Ζουν πνευματικά σε συνειδητό κόσμο - Dummies

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

Κάνει καλύτερες αποφάσεις με την άσκηση της προσοχής - τα ανδρεικέλα

Κάνει καλύτερες αποφάσεις με την άσκηση της προσοχής - τα ανδρεικέλα

Παίρνουν μια ριζοσπαστική στάση εναντίον των συνηθισμένων αποφάσεων πιο συνειδητές και εξεταζόμενες αποφάσεις - ιδιαίτερα τις σημαντικές. Λαμβάνετε αποφάσεις όλη την ημέρα: είτε να έχετε τοστ είτε δημητριακά, να ασκείτε ή να παρακολουθείτε τηλεόραση, να ελέγχετε τα E-mail σας ή να πραγματοποιείτε τηλεφωνικές κλήσεις. Και όμως η πλειοψηφία ...

Που ζείτε στην αρμονία με το διαλογισμό σας - ανδρείκελα

Που ζείτε στην αρμονία με το διαλογισμό σας - ανδρείκελα

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

Η επιλογή των συντακτών

Αποθήκευση Photoshop Images ως JPEG για Web και κινητές συσκευές - dummies

Αποθήκευση Photoshop Images ως JPEG για Web και κινητές συσκευές - dummies

Αποθήκευση αρχείων για τον ιστό ή οι κινητές συσκευές στο Photoshop Creative Suite 5 δημιουργούν μια μικρότερη έκδοση της εικόνας σας, ώστε να φορτώνεται γρήγορα. Η ιδέα είναι να γίνει η εικόνα όσο το δυνατόν μικρότερη, διατηρώντας ταυτόχρονα την οπτική ευχαρίστηση. Το JPEG (Joint Photographic Experts Group) είναι η καλύτερη μορφή για εικόνες συνεχούς τόνου ...