Idag vill jag visa hur man utför beräkningar mellan datum bekväma i Visual Basic. Net med DateDiff funktionen.
Behöver du en form, knapp, några etikettens och DateTimePicker kontroll som visas i bilden nedan:

och knappen klick händelse kommer följande kod:
txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) & "år" txtMeses.Text = DateDiff (DateInterval.Month, DateTimePicker1.Value, Now.Date) & "månader" txtSemanas.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) / 7 & "veckor" txtDias.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) & "dagar"
köra programmet, valde vi ett förflutet datum och tryck på beräkna knappen. Resultatet kommer att likna denna bild:

Detta är ett mycket enkelt exempel, titta bara på några nummer och skärmdumpar och jag är säker på att du inte kommer att ha tvivel, men om du skulle få några, bara lämna din kommentar.
Hoppas att detta hjälper.
Informationen Bitacoras.com ...
Takt Bitacoras.com: Idag vill jag visa hur man utför beräkningar mellan datum i Visual Basic Net med DateDiff funktionen.. Behöver du en form, knapp, lite etikett? S DateTimePicker kontroll, som visas i föl ...
Hej först och främst tacka er.
Jag har ett problem.
Idag är April 29, 2009
Jag föddes i september 1980
enligt
txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) & "år"
nu har jag 29 år
men det är inte så, jag har 28 på min födelsedag nyligen i September
och ändra koden
Tack igen
Peter, förlänga jag dig lite information:
Om intervall är satt till DateInterval.Year är returvärdet enkelt beräknas från och med år delar de givna två datum. På samma sätt är returvärdet för DateInterval.Month enkelt beräknas från parterna i år och månad för argumenten.
Till exempel, när man jämför 31 december-1 Januari nästa år, återvänder DateDiff 1 för DateInterval.Year eller DateInterval.Month, men endast så mycket har gått en enda dag.
I de fall jag rekommenderar till exempel alltid använda området och dividera med 365 DateInterval.Day och skulle ha en mer exakt siffra: 28,65 år (till exempel) och om du bara vill det år du kan använda int () funktion som returnerar endast en del av numret.
Ett bra exempel! Tack för info
Hej bra efter män som tjänade mig sanningen så långt är att hjälpa kameran som jag grax.
ditt inlägg mycket god vän som du kan ställa in DateTimePicker formatet DD / MM / ÅÅÅÅ Jag klarar mig qa MI (Torsdag 12 maj 1999) och verkligen inte vet hur
Hej Josef:
du bara ändra kontrollen ägare Formatdel också:
DateTimePicker1.Format = DateTimePickerFormat.Short
Lycka
Ett samråd är kanske alltför lätt, men jag skulle kunna ändra sättet att visa datum i datetiempicker för mig ser ut: Fredag 27 November, 2009, behöver jag helt enkelt: 27/11/2009.
det skulle vara, tack.
Tyvärr hade kommentaren inte sett förut, som svarar på min fråga, tack.
God eftermiddag ... Jag har ett problem ... Jag använder två DateTimePicker under vb.net 2005 och när jag väljer ett datum i den andra DateTimePicker ska jag ta skillnaden mellan två datum ... Funktionen startas på "ValueChanged" andra ... Om du kör det, men jag har alltid dra en dag än vad jag skulle ge ... till exempel ... Om jag lämnar dagens datum till den första DateTimePicker (21/12/2009) och valt i den andra nästa dag (22/12 / 2009) returnerar mig ett värde på 0 ... om du väljer honom på 23 returer mig värdet 1. Funktionen som används är enligt följande:
TextBox1.Text = CStr (DateDiff (DateInterval.Day, DTP_ShipDate.Value, DTP_ETA.Value))
Någon som vet vad som kan vara vad som händer tack?
Hej, hur mår du?
Jag har en fråga dem, som jag kan få precis samma dag som FEHA ser har jag en textruta där jag visar feha "2009/01/01" och jag behöver en dag.
Jag har den här
dim dag som heltal
dag = dag (tfecha.text)
Jag ta ingenting, men lägg
Dim år As Integer
år = år (tfecha.text)
I visar här, men jag behöver den dag
Ursäkta mig när jag gör dataTimerPicker I debuelva år-månad-dag ben "åååå / mm / dd" för att välja ett datum, jag behöver för en fråga i MySQL och datum i detta format håller dem ("åååå / mm / dd" ) .....
Om jag kunde bli agradesco guiden ... Tack på förhand.
vB ps om det är en funktion och användning eget format och CustomFormat yyy / MM / dd
Tack så mycket för informationen. Det var en stor hjälp.
God förvaltning är inte så bra VB och jag jobbar denna händelse men jag får felmeddelande 424 träffar det lilla jag har gjort, hoppas jag din hjälp
Range ("I10") = DateDiff (DateInterval.Month, TextBox18.Value, Now.Date)
Tack.
God vän Elisa, serveras tack för din funktion mig, men jag har en detalj, ger resultatet mig DateDiff är en negativ, följer exemplet du ger, men lika försök att föra den som en sträng, int, Cint, CSTR, och ingenting hjälp snälla.
Väl Elisa ursäkta besväret men god och lösa mitt problem, men jag tror du gjorde beställningen parametrarna är tvärtom, och jag menar datumet 1 och datum 2, och sedan vara datum_1 datum_2.
Tja korrigeras, nu kämpar med jämförelse av detta resultat.
Hej vän Tack Mycket användbart
Det är väldigt enkelt lol
En kvarleva av tid på att försöka senare hitta något
Gör kastade jag en stor tjänst!