Aprēķini starp Datumi (DateTimePicker - DateDiff)

Šodien es gribu parādīt, kā veikt aprēķinus starp datumiem ērtām Visual Basic Neto izmantojot DateDiff funkciju..

Nepieciešama forma, pogu dažas etiķetes un DateTimePicker kontroli, kā parādīts attēlā zemāk:

un pogas klikšķi notikums būs šādu kodu:

 txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) un "gadi"
 txtMeses.Text = DateDiff (DateInterval.Month, DateTimePicker1.Value, Now.Date) un "mēneši"
 txtSemanas.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) / 7 & "nedēļas"
 txtDias.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) un "Dienas"

palaist programmu, mēs izvēlējāmies pagātnes datumu un nospiediet Aprēķināt pogu. Rezultāts būs līdzīgs šim attēlam:

Tas ir ļoti vienkāršs piemērs, paskatieties kādu kodu un ekrānšāviņi, un es esmu pārliecināts, ka jums nebūs šaubu, bet, ja tu būtu, lai būtu kāds, vienkārši atstāt savu komentāru.

Hope this helps.

18 Atbildes uz "aprēķinus starp Datumi (DateTimePicker - DateDiff)"

  1. Informācija Bitacoras.com ...

    Līmenis Bitacoras.com: Šodien es vēlos parādīt, kā veikt aprēķinus starp datumiem Visual Basic Neto izmantojot DateDiff funkciju.. Nepieciešama forma, pogu dažas etiķete? S DateTimePicker kontroli, kā parādīts ie ...

  2. Pēteris saka:

    Sveiki vispirms paldies.

    Man ir bažas.

    Šodien ir 29 aprīlis 2009
    Esmu dzimis 1980 gada septembrī

    atbilstoši
    txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) un "gadi"

    tagad man ir 29 gadi

    bet tas tā nav, man ir 28 par manu dzimšanas dienu nesen septembrī

    un modificēt kodu

    paldies vēlreiz

    • Elīsa saka:

      Peter, es paplašināt jums nelielu informāciju:

      Ja intervāls ir iestatīts uz DateInterval.Year, atgriešanās vērtību ir vienkārši aprēķina no gada daļām diviem konkrētiem datumiem. Tāpat, atgriešanās vērtību DateInterval.Month tiek vienkārši aprēķināts no gada un argumentiem mēnesi pusēm.

      Piemēram, salīdzinot decembris 31 līdz 1.janvāra nākamajā gadā, DateDiff atgriež 1 par DateInterval.Year vai DateInterval.Month, bet tikai tik daudz, ir nokārtojis vienu dienu.

      Šādos gadījumos es ieteiktu, piemēram, vienmēr izmantojiet klāstu un plaisas pa 365 DateInterval.Day un tā būtu precīzāk zīmējumu: 28,65 gadi (piemēram), un, ja jūs vienkārši vēlaties gadu jūs varat izmantot int () funkciju, kas atgriezīsies tikai daļa no skaita.

  3. Alex saka:

    Labs piemērs! Paldies par info

  4. Jimmy saka:

    Hey laba post vīrieši, kas kalpoja man patiesību tik tālu palīdz kameru kā I grax.

  5. Ignacio Jose saka:

    Jūsu sūtījums ļoti labs draugs, piemēram, iestatīt DateTimePicker formātu DD / MM / GGGG man ar Qa MI (ceturtdiena 12 maijs, 1999) un tiešām nezinu, kā

    • Elīsa saka:

      Sveicināti Joseph:

      Jums vienkārši ir jāmaina īpašumtiesību Formatdel kontroli, kā arī:

      DateTimePicker1.Format = DateTimePickerFormat.Short

      Laime

  6. Džons F. saka:

    Apspriešana ir iespējams pārāk viegli, bet es varētu mainīt veidu, kā attēlot datumu ir datetiempicker, man izskatās: piektdiena, novembris 27, 2009, man vajag vienkārši: 27/11/2009.

    tas būtu, paldies.

  7. Džons F. saka:

    Atvainojiet, komentārs nebija redzējis, kas atbild uz manu jautājumu, paldies.

  8. mcinpapr saka:

    Labdien ... Man ir problēma ... es esmu, izmantojot divus DateTimePicker 2005 VB.NET un kad es izvēlētos datumu otrajā DateTimePicker man jālieto starpību starp diviem datumiem ... funkcija ir uzsākts "ValueChanged" 2. ... ja jūs palaist to, bet es vienmēr atņem vienu dienu, nekā es būtu dot ... piemēram ... Ja es ielieku šodienas datumu uz pirmo DateTimePicker panta 21/12/2009) un izvēlas 2. nākamajā dienā (22/12 / 2009) atgriež man vērtība ir 0 ... ja jūs izvēlaties viņam par 23 pārskatiem me vērtību 1. Izmantota funkcija ir šāds:

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

    Ikviens zina, kādi var būt, kas notiek, lūdzu?

  9. Lilimarlet saka:

    sveiki, kā jums klājas?
    Man ir radies jautājums tiem, kā es varu saņemt tikai dienu, FEHA, izskatās man ir textbox, kur es parādīt feha "01/01/2009", un man vajag vienu dienu.

    Man ir šī

    dim diena kā vesels skaitlis
    diena = diena (tfecha.text)

    Es nedod neko, bet nodot

    Dim gadu Integer
    gads = gads (tfecha.text)

    Es rāda gads šeit, bet man vajag dienā

  10. Karloss h saka:

    Atvainojiet mani, kā es varu dataTimerPicker es debuelva gads-mēnesis-diena kaulu "gggg / mm / dd", lai izvēlētos datumu, man vajag, lai vaicājumu MySQL un datumi šajā formātā saglabā to ("gggg / mm / dd" ) .....

    Ja es varētu būt agradesco rokasgrāmata ... Paldies jau iepriekš.

  11. Jennifer saka:

    Liels paldies par informāciju. Tā bija liela palīdzība.

  12. Hanner Oviedo saka:

    Laba pārvaldība nav ļoti labs VB un es esmu strādā šo notikumu, bet man kļūda 424 skāra maz es esmu darījis, es ceru, ka jūsu palīdzību

    Diapazons ("I10") = DateDiff (DateInterval.Month, TextBox18.Value, Now.Date)

    Paldies.

  13. DjMiki saka:

    Labs Draugs Elīsa, paldies par jūsu darbību pasniedz man, bet man ir detaļas, rezultāts dod man DateDiff ir negatīvs, sekot jums dodam, bet vienāds, mēģināt nodot to kā string, int, CInt, kas CStr, un nekas daži palīdzēt lūdzu.

  14. DjMiki saka:

    Nu Elīsa atvainojiet nepatikšanas, bet labu un atrisināt manu problēmu, bet es domāju, ka jūs likts kārtas parametri ir otrādi, un es domāju datumu 1 un datumu 2, un tad vajadzētu būt Date1 Date2.
    Nu labo, tagad cīnās ar salīdzinājumu šim rezultātam.

  15. Elkin V saka:

    Hey draugs Paldies Ļoti noderīga
    Tas ir ļoti vienkārši lol

    Laika palieka vēlāk mēģinot atrast kaut ko

    Man met liels favor!

Komentēt