Υπολογισμοί μεταξύ των ημερομηνιών (DateTimePicker - DateDiff)

Σήμερα θέλω να σας δείξω πώς να κάνετε υπολογισμούς μεταξύ των ημερομηνιών άνετα σε Visual Basic. Καθαρή χρησιμοποιώντας τη συνάρτηση DateDiff.

Χρειάζεστε ένα έντυπο, το κουμπί, κάποια ετικέτα και ένα στοιχείο ελέγχου DateTimePicker όπως φαίνεται στην παρακάτω εικόνα:

και σε περίπτωση κάντε κλικ στο κουμπί θα τον ακόλουθο κώδικα:

 txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) & "χρόνος"
 txtMeses.Text = DateDiff (DateInterval.Month, DateTimePicker1.Value, Now.Date) & "μήνες"
 txtSemanas.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) / 7 & "εβδομάδα"
 txtDias.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) & "ημέρες"

εκτελέσετε την εφαρμογή, θα επιλεγεί μια προηγούμενη ημερομηνία και πατήστε το κουμπί Υπολογισμός. Το αποτέλεσμα θα είναι παρόμοιο με αυτήν την εικόνα:

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

Η ελπίδα αυτό βοηθά.

18 απαντήσεις σε "υπολογισμούς μεταξύ των ημερομηνιών (DateTimePicker - DateDiff)"

  1. Bitacoras.com λέει:

    Πληροφορίες Bitacoras.com ...

    Τιμή στο Bitacoras.com: Σήμερα θέλω να σας δείξω πώς να κάνετε υπολογισμούς μεταξύ των ημερομηνιών σε Visual Basic Net χρησιμοποιώντας τη συνάρτηση DateDiff.. Χρειάζεστε ένα έντυπο, το κουμπί, κάποια ετικέτα; S DateTimePicker ελέγχου, όπως φαίνεται με τον ακόλουθο ...

  2. Πέτρος λέει:

    Γεια σας πρώτα απ 'όλα σας ευχαριστώ.

    Έχω μια ανησυχία.

    Σήμερα είναι 29, Απριλίου 2009
    Γεννήθηκα τον Σεπτέμβριο του 1980

    σύμφωνα με
    txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) & "χρόνος"

    Τώρα έχω 29 χρόνια

    αλλά ότι δεν είναι έτσι, έχω 28 για τα γενέθλιά μου πρόσφατα, τον Σεπτέμβριο

    και να τροποποιήσει τον κώδικα

    Ευχαριστώ και πάλι

    • Ελισσαιέ λέει:

      Πέτρου, θα ήθελα να σας λίγο πληροφορίες:

      Αν Διάστημα έχει οριστεί σε DateInterval.Year, η επιστρεφόμενη τιμή είναι απλά υπολογίζεται από το έτος τμήματα του δόθηκαν δύο ημερομηνίες. Ομοίως, η τιμή για την επιστροφή DateInterval.Month απλά υπολογίζεται από τα μέρη του έτους και μήνα από τα επιχειρήματα.

      Για παράδειγμα, κατά τη σύγκριση 31 Δεκ. - 1 Ιαν. επόμενο έτος, DateDiff επιστρέφει 1 για DateInterval.Year ή DateInterval.Month, αλλά μόνο αν έχει περάσει μια μέρα.

      Στις περιπτώσεις αυτές προτείνω, για παράδειγμα, χρησιμοποιείτε πάντα το εύρος και διαιρέστε με 365 DateInterval.Day και έτσι θα έχουν μια πιο ακριβή εικόνα: 28,65 χρόνια (για παράδειγμα) και εάν θέλετε ακριβώς το έτος που μπορείτε να χρησιμοποιήσετε την int () λειτουργία που θα επιστρέψει μόνο μέρος του αριθμού.

  3. Alex λέει:

    Ένα καλό παράδειγμα! Ευχαριστώ για τις πληροφορίες

  4. jimmy λέει:

    Γεια σου καλή άνδρες μετά που υπηρέτησε με την αλήθεια μέχρι τώρα βοηθά τη φωτογραφική μηχανή όπως εγώ grax.

  5. Ignacio Jose λέει:

    θέση σας πολύ καλός φίλος, όπως μπορείτε να ορίσετε τη μορφή DateTimePicker ΗΗ / ΜΜ / ΕΕΕΕ παίρνω από qa ΜΙ (Πέμπτη, 12 Μαΐου 1999) και πραγματικά δεν ξέρω πώς

    • Ελισσαιέ λέει:

      Γεια σας Joseph:

      απλά πρέπει να αλλάξει τον έλεγχο Formatdel ιδιοκτησίας καθώς και:

      DateTimePicker1.Format = DateTimePickerFormat.Short

      Τύχη

  6. Ο John F. λέει:

    Η διαβούλευση είναι ίσως πολύ εύκολο, αλλά θα μπορούσα να αλλάξω τον τρόπο να εμφανίζει την ημερομηνία στην datetiempicker, για μένα μοιάζει με: Παρασκευή 27 Νοεμβρίου του 2009, θα πρέπει απλά: 27/11/2009.

    αυτό θα ήταν, ευχαριστώ.

  7. Ο John F. λέει:

    Λυπούμαστε, το σχόλιο δεν είχε ξαναδεί, που απαντά στο ερώτημά μου, ευχαριστώ.

  8. mcinpapr λέει:

    Καλησπέρα ... Έχω ένα πρόβλημα ... Είμαι χρησιμοποιώντας δύο DateTimePicker σε vb.net 2005 και όταν επιλέξετε μια ημερομηνία στο δεύτερο DateTimePicker θα πρέπει να πάρω τη διαφορά μεταξύ δύο ημερομηνιών ... Η λειτουργία ξεκινά με την "ValueChanged" το δεύτερο ... Αν το τρέξετε, αλλά εγώ πάντα αφαιρέσουμε την μία ημέρα σε σχέση θα δώσει ... για παράδειγμα ... Αν αφήσω τη σημερινή ημερομηνία για την πρώτη DateTimePicker (21/12/2009) και επελέγησαν κατά τη δεύτερη την επόμενη μέρα (22/12 / 2009) επιστρέφει με μια τιμή 0 ... αν τον επιλέξετε, στις 23 επιστρέφει με την τιμή 1. Η λειτουργία που χρησιμοποιείται έχει ως εξής:

    TextBox1.Text = CStr (DateDiff (DateInterval.Day, DTP_ShipDate.Value, DTP_ETA.Value))

    Όποιος γνωρίζει τι μπορεί να είναι ό, τι συμβαίνει παρακαλώ;

  9. Lilimarlet λέει:

    γεια, πώς είστε;
    Έχω μια απορία τους, όπως μπορώ να πάρω μόνο την ημέρα της FEHA, κοιτάξτε έχω μια θυρίδα όπου δείχνω το feha "01/01/2009" και χρειάζομαι μια μέρα.

    Έχω αυτό το

    αμυδρό ημέρα ως ακέραιος
    ημέρες ημέρες = (tfecha.text)

    Δεν φέρει τίποτα, αλλά που

    Δημ. χρόνια As Integer
    έτος έτος = (tfecha.text)

    Ι παρουσιάζει το έτος εδώ, αλλά χρειάζομαι τη μέρα

  10. Carlos h λέει:

    Με συγχωρείτε που κάνω εγώ το dataTimerPicker debuelva έτος-μήνας-ημέρα των οστών "εεεε / μμ / ηη" για να επιλέξετε μια ημερομηνία, θα πρέπει για ένα ερώτημα σε MySQL και τις ημερομηνίες σε αυτή τη μορφή τους κρατά ("εεεε / μμ / μμ» ) .....

    Αν θα μπορούσα να είμαι ο οδηγός agradesco ... Ευχαριστώ εκ των προτέρων.

  11. Τζένιφερ λέει:

    Σας ευχαριστώ πολύ για τις πληροφορίες. Ήταν μια μεγάλη βοήθεια.

  12. Hanner Οβιέδο λέει:

    Η καλή διαχείριση δεν είναι πολύ καλή VB και δουλεύω σε αυτό το συμβάν, αλλά παίρνω το σφάλμα 424 χτύπησε το μικρό έχω κάνει, ελπίζω τη βοήθειά σας

    Εύρος ("I10") = DateDiff (DateInterval.Month, TextBox18.Value, Now.Date)

    Σας ευχαριστώ.

  13. DjMiki λέει:

    Καλή Ελισσαιέ φίλο, ευχαριστώ για τη λειτουργία σας με εξυπηρετούνται, αλλά έχω μια λεπτομέρεια, το αποτέλεσμα μου δίνει η DateDiff είναι αρνητική, ακολουθήστε το παράδειγμα που δίνετε, αλλά ίσες, προσπαθήστε να το περάσει ως string, int, CInt, CSTR, και τίποτα κάποια βοήθεια παρακαλώ.

  14. DjMiki λέει:

    Καλά Ελισσαιέ δικαιολογία το πρόβλημα, αλλά καλό και να λύσουν το πρόβλημά μου, αλλά νομίζω ότι έχετε τοποθετήσει οι παράμετροι είναι για το αντίθετο, και εννοώ την ημερομηνία 1 και 2 ημερομηνία, και στη συνέχεια θα πρέπει να είναι Ημερομηνία1 Ημερομηνία2.
    Καλά διορθωθεί, τώρα αγωνίζεται με σύγκριση του αποτελέσματος αυτού.

  15. Elkin V λέει:

    Γεια σου φίλο σας ευχαριστώ πάρα Χρήσιμα
    Είναι πολύ εύκολο lol

    Ένα απομεινάρι της εποχής αργότερα προσπαθώντας να βρει κάτι

    Μπορώ να ρίξει μια μεγάλη χάρη!

Σχόλιο