VBA DateDiff | Βήμα προς βήμα Παράδειγμα για τη χρήση της συνάρτησης DateDiff VBA Excel

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

Λειτουργία DATEDIFF στο VBA

Η συνάρτηση DATEDIFF στο VBA υπολογίζει τη διαφορά μεταξύ δύο ημερομηνιών σε ημέρες, μήνες, τέταρτα και έτη.

Στο excel, η διαφορά μεταξύ δύο ημερομηνιών έχει πολλούς τρόπους. Δεν χρειάζεστε έναν ειδικό τύπο για να υπολογίσετε τη διαφορά μεταξύ δύο ημερομηνιών.

Για παράδειγμα δείτε την παρακάτω εικόνα.

Αν θέλουμε να υπολογίσουμε τη διαφορά μεταξύ αυτών των δύο ημερομηνιών, μπορούμε απλά να αφαιρέσουμε την ημερομηνία 1 από την ημερομηνία 2.

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

Σε αυτό το άρθρο, θα σας δείξουμε πώς να χρησιμοποιήσετε αυτήν τη συνάρτηση DateDiff στο VBA.

Ποια είναι η συνάρτηση DATEDIFF στο Excel VBA;

Το DATEDIFF στο VBA σημαίνει "Διαφορά ημερομηνίας μεταξύ δύο ημερομηνιών".

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

Για να κατανοήσετε τη συνάρτηση, δείτε την παρακάτω σύνταξη της συνάρτησης.

Διάστημα: Αυτό δεν είναι παρά με ποιον τρόπο θέλετε να υπολογίσετε τη διαφορά ημερομηνίας. Είτε είναι σε ημέρες, μήνες, εβδομάδες, τέταρτα, κλπ… Παρακάτω είναι η λίστα των ίδιων.

Ημερομηνία 1: Ποια είναι η πρώτη ημερομηνία που θέλετε να βρείτε τη διαφορά.

Ημερομηνία 2: Ποια είναι η δεύτερη ημερομηνία που θέλετε να βρείτε τη διαφορά από την Ημερομηνία 1. Ημερομηνία 1: Ποια είναι η πρώτη ημερομηνία που θέλετε να βρείτε τη διαφορά.

Εδώ ο τύπος είναι Ημερομηνία 2 - Ημερομηνία 1.

[Πρώτη ημέρα της εβδομάδας]: Ποια είναι η πρώτη ημέρα της εβδομάδας; Μπορούμε να ακολουθήσουμε επιχειρήματα.

[Πρώτη εβδομάδα του έτους]: Ποια είναι η πρώτη εβδομάδα του έτους. Μπορούμε να εισαγάγουμε τα ακόλουθα ορίσματα.

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

Ακολουθούν τα παραδείγματα του excel VBA DateDiff.

Μπορείτε να πραγματοποιήσετε λήψη αυτού του προτύπου συνάρτησης DateDiff VBA εδώ - Πρότυπο συνάρτησης DateDiff VBA

Παράδειγμα # 1 - Για να βρείτε διαφορές σε ημέρες

Ας υποθέσουμε ότι έχετε δύο ημερομηνίες "15-01-2018" και "15-01-2019". Ας βρούμε κάθε είδους διαφορές για αυτές τις δύο ημερομηνίες.

Βήμα 1: Δημιουργήστε πρώτα ένα όνομα μακροεντολής.

Κώδικας:

 Sub DateDiff_Example1 () End Sub 

Βήμα 2: Ορίστε δύο μεταβλητές ως ημερομηνία.

Κώδικας:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date End Sub 

Βήμα 3: Τώρα για τη μεταβλητή Date1 εκχωρήστε "15-01-2018" και για τη μεταβλητή Date2 εκχωρήστε "15-01-2019"

Κώδικας:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub 

Βήμα 4: Τώρα για να αποθηκεύσετε τα αποτελέσματα ορίστε μια ακόμη μεταβλητή ως Long.

Κώδικας:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub 

Βήμα 5: Τώρα ορίστε την τιμή για αυτήν τη μεταβλητή μέσω της συνάρτησης DATEDIFF στο VBA

Κώδικας:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Αποτέλεσμα = DateDiff (End Sub 

Βήμα 6: Το πρώτο επιχείρημα είναι τι είδους διαφορά χρειαζόμαστε μεταξύ αυτών των δύο ημερομηνιών. Ας πούμε ότι πρέπει να βρούμε τον αριθμό των ημερών, οπότε δώστε το επιχείρημα ως "D".

Κώδικας:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Αποτέλεσμα = DateDiff ("D", End Sub 

Βήμα 7: Ποια είναι η πρώτη ημερομηνία για να βρείτε τη διαφορά. Η πρώτη μας ημερομηνία είναι "15-01-2018" που έχουμε ήδη εκχωρήσει στη μεταβλητή "Date1". Ορίστε λοιπόν το όνομα της μεταβλητής εδώ.

Κώδικας:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Αποτέλεσμα = DateDiff ("D", Date1, End Sub 

Βήμα 8: Ποια είναι η δεύτερη ημερομηνία για να βρείτε τη διαφορά. Η δεύτερη ημερομηνία είναι "15-01-2019" που κρατά την τιμή μέσω της μεταβλητής "Date2".

Κώδικας:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Αποτέλεσμα = DateDiff ("D", Date1, Date2) End Sub 

Βήμα 9: Αγνοήστε τις δύο τελευταίες παραμέτρους. Τώρα ορίστε την τιμή της μεταβλητής "Αποτέλεσμα" μέσω του πλαισίου μηνυμάτων VBA.

Κώδικας:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", Date1, Date2) MsgBox Αποτέλεσμα End Sub 

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

Έτσι, από το "15-01-2018" έως το 15-01-2019 "η ακριβής διαφορά είναι 1 έτος, οπότε έχουμε 365 ημέρες ως αποτέλεσμα.

Έτσι, μπορούμε να βρούμε τη διαφορά μεταξύ δύο ημερομηνιών σε χρονικά διαστήματα.

Παράδειγμα # 2 - Για να βρείτε τη διαφορά σε μήνες

Κώδικας:

 Sub DateDiff_Example2 () Dim Date1 As Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("M", Date1, Date2) MsgBox Αποτέλεσμα End Sub 

 

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

Παράδειγμα # 3 - Για να βρείτε τη διαφορά σε έτη

Κώδικας:

 Sub DateDiff_Example3 () Dim Date1 As Date Dim Date2 As Date Dim Result as Long Date1 = "15-01-2018" Date2 = "15-01-2019" Αποτέλεσμα = DateDiff ("YYYY", Date1, Date2) MsgBox Αποτέλεσμα End Sub 

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

Εργασία ως πρακτική

Ελπίζω να έχετε κατανοήσει τη λειτουργία του VBA DATEDIFF. Ρίξτε μια ματιά στην παρακάτω εργασία για εσάς. Βρείτε τη διαφορά μεταξύ των παρακάτω ημερομηνιών στο "Μήνες".

Εάν δεν έχετε βρει τον παρακάτω τρόπο είναι ο κωδικός έτοιμος για εσάς.

Κώδικας:

 Sub Assignment () Dim k As Long For k = 2 to 8 Cells (k, 3). Value = DateDiff ("M", Cells (k, 1), Cells (k, 2)) Next k End Sub 

Μπορείτε να εκτελέσετε αυτόν τον κωδικό χειροκίνητα ή να πατήσετε το πλήκτρο F5 για να δείτε το αποτέλεσμα.