Oggi voglio mostrarvi come eseguire calcoli su date confortevole Visual Basic. NET utilizzando la funzione DateDiff.
Hai bisogno di una forma, un pulsante, una label ed un controllo DateTimePicker, come mostrato nell'immagine qui sotto:

e l'evento fare clic sul pulsante sarà il seguente codice:
txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) & "anni" txtMeses.Text = DateDiff (DateInterval.Month, DateTimePicker1.Value, Now.Date) & "mesi" txtSemanas.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) / 7 & "settimane" txtDias.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) & "giorni"
eseguire l'applicazione, selezionare una data in passato e premere il pulsante Calcola. Il risultato sarà simile a questa immagine:

Questo è un esempio molto semplice, basta guardare il codice e prendere un po 'e sono sicuro che non avrai dubbi, ma se avete qualsiasi, basta lasciare il tuo commento.
Spero che si impara.
Bitacoras.com informazioni ...
Tasso di Bitacoras.com: Oggi voglio mostrarvi come eseguire calcoli tra date in Visual Basic Net utilizzando la funzione DateDiff.. Hai bisogno di una forma, un pulsante, qualche etichetta? S e un controllo DateTimePicker, come mostrato nei seguenti ...
Ciao prima di tutto vi ringrazio.
Ho una preoccupazione.
Oggi è 29 Apr 2009
Sono nato nel settembre 1980
secondo
txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) & "anni"
ora ho 29 anni
ma non è così, perché ho appena compiuto 28 anni a settembre
e modificare il codice
grazie ancora
Pietro, rivolgo un po 'di informazioni:
Se Interval è impostato su DateInterval.Year, il valore di ritorno è semplicemente calcolato dalle parti anno delle due date. Analogamente, il valore restituito per DateInterval.Month è semplicemente calcolato dalle parti dell 'anno e il mese degli argomenti.
Per esempio, quando si confrontano 31 Dicembre-1 gennaio dell'anno prossimo, DateDiff restituisce 1 per DateInterval.Year o DateInterval.Month, ma solo tanto è passato un solo giorno.
In questi casi vi consiglio, ad esempio, utilizzare sempre l'intervallo e dividendo per DateInterval.Day 365 e così sarebbe una cifra più precisa: 28,65 anni (per esempio) e se si desidera solo l'anno è possibile utilizzare la funzione int () si ritorna solo la parte intera del numero.
Un buon esempio! Grazie per le informazioni
Ehi uomini buon post che mi ha servito la verità finora è aiutare la fotocamera come ho Grax.
il tuo amico dopo molto buoni come te per impostare il formato DateTimePicker GG / MM / AAAA per qa me out (Giovedi, May 12, 1999) E io davvero non so come
Ciao Giuseppe:
è sufficiente modificare il controllo Formatdel proprietà, in questo modo:
DateTimePicker1.Format = DateTimePickerFormat.Short
Fortuna
Una consultazione è forse troppo facile, ma potrei cambiare il modo di visualizzare la data nella datetiempicker, a me sembra: Venerdì 27 Novembre 2009, la necessità semplice: 27/11/2009.
che sarebbe, grazie.
Il commento non avevo mai visto prima, che risponde alla mia domanda, grazie.
Buona sera ... ho un problema ... sto usando due DateTimePicker in vb.net 2005 e quando si seleziona una data nel DateTimePicker secondo devo prendere la differenza tra le due date di ... La funzione è iniziata alla "ValueChanged" la seconda ... se lo si esegue, ma mi sottrae sempre un giorno di quello che dovrebbe dare ... per esempio ... Se lascio la data odierna per la prima DateTimePicker (21/12/2009) e selezionato nella seconda il giorno successivo (22/12 / 2009) mi restituisce un valore pari a 0 ... se lo seleziona il 23 mi restituisce 1. La funzione che uso è:
TextBox1.Text = CStr (DateDiff (DateInterval.Day, DTP_ShipDate.Value, DTP_ETA.Value))
Qualcuno sa che cosa può essere ciò che accade per favore?
Ciao, come sono?
Ho un loro query, come posso ottenere solo il giorno della FEHA, guarda io ho una casella di testo dove mostrare la FEHA "2009/01/01" e ho bisogno di un giorno.
Ho questo
dim come il giorno intero
giorno = giorno (tfecha.text)
Non ho portato nulla, ma mettere
As anno intero
anno = anno (tfecha.text)
I indica l'anno qui ma ho bisogno del giorno
Come mi scuso che ho debuelva dataTimerPicker anno-mese-giorno osso "aaaa / mm / dd" per selezionare una data, ho bisogno di una query Mysql e la data salva in quel formato ("yyyy / mm / gg" ) ... ..
Se potessi essere la guida agradesco ... Grazie in anticipo.
ps se c'è una funzione in VB e con formato personalizzato, e CustomFormat yyy / MM / gg
La ringrazio molto per le info. E 'stato un grande aiuto.
Una buona gestione non è molto sviluppato VB e sto questo evento ma ottengo errore 424 non ha colpito il poco che ho fatto, spero che il vostro aiuto
Range ("I10") = DateDiff (DateInterval.Month, TextBox18.Value, Now.Date)
Grazie.
Eliseo buon amico, grazie per la vostra funzione mi ha servito, ma io sono un dettaglio, il risultato mi dà la DateDiff è negativa, seguire l'esempio che stai dando, ma ancora, cerco di passarla come string, int, CInt, CStr, e niente un aiuto per favore.
Eliseo Beh scusa il fastidioso ma buono e risolvere il mio problema, ma penso che hai effettuato i parametri dell'ordine sono il contrario, e voglio dire la data data 1 e 2, allora dovrebbe essere Data1 Date2.
Ben corretto, ora alle prese con confronto di questo risultato.
Ehi amico Thank You Very utili
E 'così semplice lol
Prendere una pausa di tempo cercando di trovare qualcosa
Echo Make Me un favore!