Izračuni med datumi (DateTimePicker - DateDiff)

Danes želim pokazati, kako se izvajajo izračune med datumi udobno v Visual Basic. Net uporabo funkcije DateDiff.

Rabite obrazec, gumb nekatere etikete in DateTimePicker nadzor, kot je prikazano na sliki spodaj:

in v primeru Button kliknite bo naslednja številka:

 txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) in "leti"
 txtMeses.Text = DateDiff (DateInterval.Month, DateTimePicker1.Value, Now.Date) & "mesecev"
 txtSemanas.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) / 7 & "tednov"
 txtDias.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) in "dni"

zaženete aplikacijo, smo izbrali mimo datum in pritisnite gumb Izračunaj. Rezultat bo podoben tej sliki:

To je zelo preprost primer, samo poglej nekaj kode in posnetki zaslonov in prepričan sem, da ne boste v dvomih, če pa so, da imajo vse, samo pustite komentar.

Upam, da to pomaga.

18 Responses to "izračunih med datumi (DateTimePicker - DateDiff)"

  1. Bitacoras.com dejal:

    Informacije Bitacoras.com ...

    Stopnja Bitacoras.com: Danes želim pokazati, kako se izvajajo izračune med datumi v Visual Basic Čisti uporabo funkcije DateDiff.. Rabite obrazec, gumb neko nalepko? Upravljanje s DateTimePicker, kot je prikazano v nasled ...

  2. Peter pravi:

    Pozdravljeni, najprej hvala.

    Imam pomisleke.

    Danes je 29. april 2009
    Rodil sem se v septembru 1980

    po
    txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) in "leti"

    Zdaj imam 29 let

    vendar to ni tako, imam 28 za moj rojstni dan pred kratkim, septembra

    in spreminjanje kode

    hvala še enkrat

    • Elizej reče:

      Peter, sem se razširi vam malo informacij:

      Če je interval nastavljen na DateInterval.Year, je vrnjena vrednost preprosto izračuna iz leta delov dvema datumoma. Podobno se je donosnost vrednost za DateInterval.Month preprosto izračuna od strank v letu in mesecu argumentov.

      Na primer, če primerjamo 31. decembra do 1. januarja prihodnje leto, DateDiff vrne 1 za DateInterval.Year ali DateInterval.Month, vendar le, saj je veliko opravil v enem dnevu.

      V teh primerih vam priporočam, na primer, vedno uporabite obseg in razkoraka z 365 DateInterval.Day in tako bi morali bolj natančno sliko: 28.65 let (na primer) in če si želite letom, lahko uporabite int () funkcijo, ki bo vrnil le del števila.

  3. Alex pravi:

    Dober primer! Hvala za info

  4. Jimmy pravi:

    Hej dobri ljudje pošte, ki je služil mi resnico, če pomaga fotoaparat kot I grax.

  5. Ignacio Jose pravi:

    Vaša objava zelo dober prijatelj, kot si ti, da nastavite DateTimePicker obliki DD / MM / LLLL dobim ZK, mi (četrtek, 12. maj, 1999) in res ne vem, kako

    • Elizej reče:

      Pozdravljeni Joseph:

      boste morali spremeniti nadzor lastniški Formatdel tudi:

      DateTimePicker1.Format = DateTimePickerFormat.Short

      Luck

  6. John F. pravi:

    Posvetovanje je morda preveč preprosto, vendar sem lahko spremenite način prikaza datuma v datetiempicker, mi izgleda nekako takole: petek, 27. november, 2009, moram preprosto: 27/11/2009.

    da bi, hvala.

  7. John F. pravi:

    Žal je komentar ni videl, ki odgovarja na moje vprašanje, hvala.

  8. mcinpapr pravi:

    Dober dan ... imam problem ... sem z dvema DateTimePicker v VB.NET 2005, ko sem izbrati datum v drugem DateTimePicker naj bi razliko med dvema datumoma ... Funkcija se začeli na "ValueChanged" drugi ... Če bi sistem deloval, ampak sem vedno odšteje en dan, kot bi jaz dal ... na primer ... Če pustim današnji datum prvega DateTimePicker (21/12/2009) in izbran v drugo naslednji dan (22/12 / 2009) vrne mi vrednost 0, ..., če si ga izberete na 23 mi vrne vrednost 1. Uporabljena funkcija je, kot sledi:

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

    Kdo ve kaj se lahko zgodi, prosim?

  9. Lilimarlet pravi:

    Pozdravljeni, kako si?
    Imam poizvedbo jim, saj lahko dobim samo dan v FEHA, poglej imam učbenik, kjer sem pokazati feha "01/01/2009" in rabim en dan.

    Imam to

    dim dan kot celo število
    dan = dan (tfecha.text)

    Jaz ne bi ničesar, vendar naj

    Dim leto Kot Integer
    leto = leto (tfecha.text)

    I kaže leto tukaj, ampak moram dan

  10. Carlos h pravi:

    Oprostite, kot sem, da sem dataTimerPicker debuelva leto-mesec-dan kosti "yyyy / mm / dd", da izberete datum, rabim za poizvedbo v MySQL in dogodki v tem formatu jih hrani ("yyyy / mm / dd" ) .....

    Če sem lahko agradesco vodnik ... Hvala vnaprej.

  11. Jennifer pravi:

    Najlepša hvala za informacije. To je bil v veliko pomoč.

  12. Hanner Oviedo pravi:

    Dobro upravljanje ni zelo dobra VB in delam ta dogodek, ampak dobim error 424 udaril malo sem naredil, upam, da vašo pomoč

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

    Hvala.

  13. DjMiki pravi:

    Dober prijatelj Elizej, hvala za vaš funkcijo mi stregli, ampak imam podrobnost, rezultat mi daje DateDiff je negativen, sledijo zgledu, ki ga daje, vendar enako, poskusite dajati kot niz, int, funkciji CInt, ki CStr in nič nekateri pomoč prosim.

  14. DjMiki pravi:

    No Elisha izgovor težave, ampak dober in rešiti moj problem, ampak mislim, da ste postavili red parametri obratno, in mislim datum 1 in datum 2, nato pa bi moral biti Date1 date2.
    No popraviti, zdaj borijo s primerjavo tega rezultata.

  15. V Elkin pravi:

    Hej Prijatelj Hvala Koristne
    To je zelo enostavno lol

    Ostanek pa kasneje poskušal najti nekaj

    Ali moram oddati veliko uslugo!

Komentar