Έχουμε ήδη εξετάσει τι είναι οι μεταβλητές, οι τύποι δεδομένων και οι σταθερές, στο σεμινάριο Τύποι δεδομένων VBA - Μεταβλητές και σταθερές. Σε αυτό το σεμινάριο, θα καλύψουμε πώς να δηλώσουμε μια μεταβλητή ως ημερομηνία.
Στο VBA, ο τύπος δεδομένων ημερομηνίας αποθηκεύεται ως δεκαδικό. Τόσο οι ημερομηνίες όσο και οι ώρες μπορούν να αποθηκευτούν σε αυτόν τον τύπο δεδομένων. Ο τύπος δεδομένων ημερομηνίας VBA μπορεί να αποθηκεύσει τιμές που κυμαίνονται από 1 Ιανουαρίου 100 έως 31 Δεκεμβρίου 9999.
Μεταβλητή ημερομηνίας VBA
Δηλώνετε μια μεταβλητή ως ημερομηνία χρησιμοποιώντας τη λέξη -κλειδί Dim:
1 | Dim dateOne as Date |
Στη συνέχεια, μπορείτε να αντιστοιχίσετε μια ημερομηνία στη μεταβλητή ημερομηνίας. Υπάρχουν πολλοί τρόποι για να δημιουργήσετε ημερομηνίες για εκχώρηση σε μεταβλητές:
Εκχωρήστε σήμερα στη μεταβλητή
Η συνάρτηση ημερομηνίας θα επιστρέψει τη σημερινή ημερομηνία:
123 | Dim dtΣήμεραdtToday = Ημερομηνία |
Εκχώρηση τώρα στη μεταβλητή
Η λειτουργία τώρα θα επιστρέψει την σημερινή ημερομηνία και την τρέχουσα ώρα:
123 | Dim dNowdNow = Τώρα |
Εκχώρηση χρόνου σε μεταβλητή
Η συνάρτηση χρόνου θα επιστρέψει την τρέχουσα ώρα:
123 | Dim tTimetTime = Χρόνος |
Εκχωρήστε μια ημερομηνία σε μεταβλητή με το DateSerial
Η συνάρτηση DateSerial θα επιστρέψει μια ημερομηνία με βάση ένα έτος, μήνα και ημέρα εισόδου:
123 | Dim dsDatedsDate = DateSerial (2010, 11, 11) |
Αντιστοίχιση ώρας σε μεταβλητή με το TimeSerial
Η λειτουργία TimeSerial θα επιστρέψει μια ώρα, με βάση μια ώρα εισόδου, λεπτό και δευτερόλεπτο:
123 | Dim tsTimetsTime = TimeSerial (10, 10, 45) |
Πρέπει να επισυνάψετε ημερομηνίες με το # ή "όταν τις χρησιμοποιείτε στον κωδικό σας, όπως φαίνεται παρακάτω:
Λειτουργία VBA DateValue
Η συνάρτηση VBA DateValue μπορεί να χρησιμοποιηθεί για την προετοιμασία μιας ημερομηνίας. Ο ακόλουθος κώδικας μπορεί να χρησιμοποιηθεί για την προετοιμασία μιας ημερομηνίας στο VBA:
1 | MsgBox DateValue ("1/1/2010") |
Συνάρτηση VBA TimeValue
1 | MsgBox TimeValue ("21:30:57") |
Παράδειγμα μεταβλητής ημερομηνίας Excel VBA
Αυτή η διαδικασία δείχνει πώς μπορείτε να δημιουργήσετε μεταβλητές ημερομηνίας, να τους αντιστοιχίσετε τιμές και να τις εξάγετε σε ένα φύλλο εργασίας του Excel:
12345678910111213 | Sub DeclaringAVariableAsADate ()Dim dateOne As DateDim dateTwo As DatedateOne = #1/1/2019 #dateTwo = "1/2/2019"Εύρος ("A1"). Τιμή = dateOneΕύρος ("A2"). Τιμή = ημερομηνία δύοΤέλος υπο |
Το αποτέλεσμα είναι:
Μπορείτε να μάθετε περισσότερα σχετικά με τις Λειτουργίες ημερομηνίας σε αυτό το σεμινάριο.
Μεταβλητή ημερομηνίας VBA στην πρόσβαση
Η μεταβλητή ημερομηνίας λειτουργεί ακριβώς το ίδιο στην Access VBA όπως στο Excel VBA.
Αυτή η διαδικασία δείχνει πώς μπορείτε να δημιουργήσετε μια μεταβλητή ημερομηνίας και να ενημερώσετε ένα πεδίο σε έναν πίνακα πρόσβασης με την τιμή.
12345 | Sub DeclaringAVariableAsADate ()Dim dtWork As DatedtWork = #05/10/2020 #DoCmd.RunSql "UPDATE tblJobs SET WorkDate = #" & dtWork & " # WHERE JobNo = 6"Τέλος υπο |