VBA TimeValue - Πώς να χρησιμοποιήσετε τη συνάρτηση τιμής χρόνου στο Excel VBA;

Η τιμή ώρας στο VBA είναι μια ενσωματωμένη συνάρτηση η οποία κατηγοριοποιείται επίσης στη συνάρτηση ημερομηνίας και ώρας στο VBA, αυτή η συνάρτηση όπως υποδηλώνει το όνομα μας δίνει την αριθμητική τιμή της ημερομηνίας που παρέχεται ως όρισμα, παίρνει ένα μόνο όρισμα που είναι η ημερομηνία και επιστρέφει την αριθμητική τιμή από το όρισμα.

Τι κάνει η λειτουργία Time Value στη VBA;

Η συνάρτηση Value time στο VBA Excel επιστρέφει το τμήμα τιμής ώρας από την πλήρη ημερομηνία και ώρα. Η ημερομηνία και η ώρα αποθηκεύονται ως σειριακοί αριθμοί στο excel. Ο σειριακός αριθμός αντιπροσωπεύει την ΗΜΕΡΟΜΗΝΙΑ και το δεκαδικό αντιπροσωπεύει την ώρα. Χρησιμοποιώντας τη συνάρτηση TimeValue, μπορούμε να λάβουμε μόνο τον σειριακό αριθμό χρόνου, δηλαδή τον δεκαδικό αριθμό.

Σύνταξη της συνάρτησης VBA TimeValue

Η σύνταξη της συνάρτησης VBA TimeValue ως εξής.

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

Παραδείγματα συνάρτησης TimeValue με το Excel VBA

Ακολουθούν τα παραδείγματα της συνάρτησης VBA TimeValue.

Παράδειγμα VBA TimeValue # 1

Τώρα, δείτε το απλό παράδειγμα της συνάρτησης VBA TimeValue.

Κώδικας:

Sub TIMEVALUE_Function_Example1 () 'Μετατροπή της δεδομένης συμβολοσειράς εισόδου σε έγκυρη ώρα και εμφάνιση στην οθόνη' Μεταβλητή δήλωση Dim MyTime As Date 'Εκχωρήστε ώρα σε μια μεταβλητή MyTime = TimeValue ("28-05-2019 16:50:45")' Εμφάνιση εξόδου στην οθόνη MsgBox "Η τρέχουσα ώρα είναι:" & MyTime, vbInformation, "VBA TIMEVALUE Function" End Sub

Πρώτον, έχω δηλώσει τη μεταβλητή "MyTime" ως ημερομηνία.

Χαμηλό MyTime ως ημερομηνία

Τότε έχω εκχωρήσει την τιμή στη μεταβλητή εφαρμόζοντας TimeValue.

MyTime = TimeValue ("28-05-2019 16:50:45")

Στη συνέχεια, στο πλαίσιο μηνύματος, έχω εκχωρήσει το μεταβλητό αποτέλεσμα.

MsgBox "Παροχή χρόνου είναι:" & MyTime, vbInformation, "Λειτουργία TIMEVALUE".

Εάν εκτελέσω τον κωδικό χρησιμοποιώντας το πλήκτρο F5 ή χειροκίνητα, τότε θα έχουμε το αποτέλεσμα ως εξής.

Παράδειγμα VBA TimeValue # 2

Για τον ίδιο κωδικό, θα δηλώσω τη μεταβλητή VBA ως "Double".

Κώδικας:

Sub TIMEVALUE_Function_Example1 () 'Μετατροπή της δεδομένης συμβολοσειράς εισόδου σε έγκυρη ώρα και εμφάνιση στην οθόνη' Μεταβλητή δήλωση Dim MyTime As Double 'Αντιστοίχιση χρόνου σε μεταβλητή MyTime = TimeValue ("28-05-2019 16:50:45")' Έξοδος οθόνης στην οθόνη MsgBox "Η τρέχουσα ώρα είναι:" & MyTime, vbInformation, "VBA TIMEVALUE Function" End Sub

Τώρα, εάν εκτελέσω τον κωδικό VBA χειροκίνητα ή πατώντας το πλήκτρο F5, θα εμφανιστεί το σειριακό αριθμό μέρος της ώρας 16:50:45.

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

Τώρα θα εφαρμόσω τη μορφή ώρας για να ελέγξω το ακριβές αποτέλεσμα.

Όταν το μετατρέπετε σε μορφή ώρας, μπορείτε να δείτε την ακριβή ώρα.

Παράδειγμα VBA TimeValue # 3

Τώρα, δείτε τα παρακάτω δεδομένα.

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

Έχουμε στοιχεία από 1 ης κυττάρων έως 14 χιλ κυττάρων, έτσι ώστε βρόχο μας θα πρέπει να τρέξει για 14 ώρες. Πρέπει να χρησιμοποιήσουμε το βρόχο FOR NEXT στο VBA για να αναφέρουμε το κατώτερο όριο και το ανώτερο όριο. Ο παρακάτω κώδικας είναι ο ήδη γραμμένος κώδικας για εξαγωγή της τιμής ώρας από το συνδυασμό ημερομηνίας και ώρας.

Κώδικας:

Sub TimeValue_Example3 () Dim k As Integer For k = 1 to 14 Cells (k, 2). Value = TimeValue (Cells (k, 1). Value) Next k End Sub

Όταν εκτελούμε τον κώδικα, θα λάβουμε τις τιμές όπως παρακάτω.

Εάν θέλετε να δείτε την ώρα, τότε εφαρμόστε τη μορφή TIME σε αυτήν.

Έτσι, έτσι λειτουργεί η συνάρτηση TIME VALUE στο VBA & Excel.

ενδιαφέροντα άρθρα...