Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Visual Βασικά Προγραμματισμός

Σύγκριση Ημερομηνία σε VBA

Συγκρίνοντας ημερομηνίες στην VBA , ή Visual Basic for Applications , είναι ουσιαστικά η ίδια διαδικασία όπως τη σύγκριση ακέραιοι . Για να κάνετε τη σύγκριση των ημερομηνιών διευκολύνει και να απλοποιήσει την εργασία με ημερομηνίες σε γενικές γραμμές , χρησιμοποιούν τα ονόματα των μεταβλητών που δείχνουν ένα είδος " Date" . Για παράδειγμα , γράψτε " DAT1 , " ή " birthday1 . " Για να καταλάβουμε πώς να συγκρίνουν τις ημερομηνίες , γράφουν σύντομα προγράμματα που εκτελούν ημερομηνία συγκρίσεις , και να χρησιμοποιήσετε τη λειτουργία βήμα-προς - βήμα εκτέλεση του περιβάλλοντος προγραμματισμού VBA , μαζί με το παράθυρο του περιβάλλοντος του "Quick ρολόι » , να τηρούν αυτές τις συγκρίσεις σε πραγματικό χρόνο . Καθορισμός τύπου
Η

Δεν χρειάζεται να μετατρέψετε ημερομηνίες στον τύπο "Ημερομηνία" για συγκρίσεις , αν είστε ήδη σε αυτό το είδος . Μπορείτε να πείτε αν μια μεταβλητή είναι ένας τύπος σήμερα σε μια -δυο τρόπους . Κοιτάξτε το τμήμα δηλώσεων κατά την έναρξη της διαδικασίας VBA . Το τμήμα αυτό είναι όπου μπορείτε να δηλώνουν όλες τις μεταβλητές χρησιμοποιώντας το "Dim " λέξη κλειδί. Μεταβλητές ημερομηνία σας θα πρέπει να δηλώνονται με τις δηλώσεις όπως αυτή: " . Dim d1 ως ημερομηνία " Ένας άλλος τρόπος για να σας πω αν σας μεταβλητή είναι ένα είδος "Ημερομηνία" είναι κοιτάζοντας αναθέσεις σε μια μεταβλητή . Οι εν λόγω εργασίες θα χρησιμοποιήσετε το χαρακτήρα «#» , η οποία δηλώνει τον τύπο "Ημερομηνία" . Για παράδειγμα , η ακόλουθη δήλωση εκχωρεί την ημερομηνία " 12/1/2001 " στο "Ημερομηνία" μεταβλητή " Δ1 ".

D1 = # 12/1/2001 #
εικόνων Μετατροπή σε ημερομηνία
Τύπος

Για να συγκρίνετε τις ημερομηνίες σε VBA , θα πρέπει πρώτα να έχουν δύο ημερομηνίες που είναι αποθηκευμένα στον τύπο "Ημερομηνία" , το οποίο είναι ένα από τα πολλά είδη αξίας σε VBA . Ο τύπος «Ημερομηνία » είναι μια ειδική περίπτωση του τύπου δεδομένων ακέραιος , οπότε συγκρίνοντας τις ημερομηνίες είναι ουσιαστικά η ίδια όπως τη σύγκριση ακέραιοι. Εάν οι ημερομηνίες σας δεν είναι ακόμη στον τύπο "Ημερομηνία" , θα πρέπει να τα μετατρέψετε σε αυτό το είδος . Πιστεύετε ότι με την εφαρμογή της συνάρτησης CDate . Για παράδειγμα, εκτελέστε την ακόλουθη δήλωση για να μετατρέψει το string " 12/1/2001 " σε έναν τύπο ημερομηνία :

D1 = CDate ( " 12/1/2001 " )
εικόνων
η σύγκριση
Η

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

Αν ( d1

Χρησιμοποιήστε το μεγαλύτερο - από ό, τι το σύμβολο για να ελέγξετε αν μια ημερομηνία είναι μεταγενέστερη από την άλλη ημερομηνία , και να χρησιμοποιήσετε το ισούται με το σύμβολο για να διαπιστωθεί αν οι τιμές σε δύο μεταβλητές αφορούν την ίδια ημερομηνία .
εικόνων πρόγραμμα δείγμα
Η

Γράψτε ένα πρόγραμμα που μετατρέπει δείγματος και συγκρίνει ημερομηνίες, ώστε να μπορείτε να ανατρέξετε στο πρόγραμμα όταν γράφετε πιο πολύπλοκα προγράμματα VBA που εκτελεί ημερομηνία συγκρίσεις . Ανοίξτε το περιβάλλον προγραμματισμού σε μία από τις εφαρμογές του Office , κάνοντας κλικ στο κουμπί "Προγραμματιστής " καρτέλας " Visual Basic" , στη συνέχεια, επικολλήστε το ακόλουθο πρόγραμμα στο κεντρικό παράθυρο του περιβάλλοντος. Αυτό το πρόγραμμα χρησιμοποιεί τη λειτουργία " CDate " για να μετατρέψετε χορδές με τις ημερομηνίες , και εκτελεί τρεις διαφορετικές συγκρίσεις σε δύο ημερομηνίες . Εκτελέστε το πρόγραμμα πατώντας το πλήκτρο " F5 " και δείτε την παραγωγή της κοιτάζοντας στο παράθυρο " Άμεση " .

CompareDates Public Sub ( )

Dim d1 , d2 Ως Ημερομηνία

d1 = CDate ( " 12/1/2001 " )

d2 = CDate ( " 12/1/2002 " )

Αν ( d1

Αν ( d1 > d2 ) τότε Debug.Print " ημερομηνία 1 πραγματοποιείται το αργότερο μέχρι την ημερομηνία 2 . "

Αν ( d1 = d2) Στη συνέχεια, Debug . Εκτύπωση " ημερομηνία 1 είναι η ίδια με την ημερομηνία 2 . "

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

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