Visualizzazione dei risultati da 1 a 9 su 9

Discussione: [Vb6] Calcolare l'età

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    35

    [Vb6] Calcolare l'età

    Buona sera a tutti. Vorrei chiedere un aiuto riguardo i calcolo dell'età estraendo la data da due textbox. Mi spiego meglio:
    Ho creato un form dove ho inserito una text1 nella quale scrivo la data di nascita (per esempio 08/10/1980). Ho creato una seconda text2 dove vorrei che mi comparissero gli anni (esempio facendo riferimento alla data di prima "29"). So che è una cosa banale ma prorio non ci riesco. Ho cercato nel forum ma non ho trovato niente riguardo questo argomento. In attesa di una risposta ringrazio tutti e porgo cordiali saluti, Massimo.

  2. #2
    Due indizi: CDate, DateDiff.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    La cosa diverrebbe molto più semplice se usassi un oggetto DateTimePicker. In questo modo, chiamando il controllo che ti ho appena citato DatadiNascita e la casella di testo dove vuoi che compia l'eta, appunto txtEta puoi scrivere la subroutine

    codice:
        Private Sub DatadiNascita_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DatadiNascita.ValueChanged
            txtEta.text = cstr(DatadiNascita.Value.Year - Now.Year)
        End Sub

    try and let me know


    EDIT: chiedo venia, ora ho letto che la soluzione richiesta è per VB6, io ho scritto codice in VB.NET ....pardon!!!
    Valentino a.k.a. Arpyone

    LAUREA? work in progress!

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    35
    Salve a tutti. Allora ho provato e riprovato ma non ci capisco niente. Mi sembrerebbe una cosa tanto semplice e invece...... Creo una text1 dove scrivo la data di nascita, creo una seconda text2 dove scrivo: Date - text1 e il risultato dovrebbe darmi gli anni. Ma non è così. Ho provato a cercare ma continuo a non capire. Ho trovato anche questo codice già scritto:

    Function Age(BirthDate As Date, Optional CurrentDate As Variant) As Integer
    BirthDate = Text1.Text
    If IsMissing(CurrentDate) Then CurrentDate = Now
    Age = Year(CurrentDate) - Year(BirthDate)
    Text2.Text = Age
    End Property

    ma niente........!

    Non ci riesco! Provate a darmi qualche altro indizio! Grazie a tutti, buona serata, Massimo.

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    35
    Eccomi di nuovo. Ho risolto scrivendo questo codice:

    Private Sub Command1_Click()

    Dim DataNascita As Date
    Dim Anni
    DataNascita = Text1.Text
    Anni = DateDiff("yyyy", Now, DataNascita) * -1
    Text2.Text = Anni
    End Sub

    Il codice funziona, secondo voi può andare? Di nuovo saluto e ringrazio tutti, Massimo!
    Grazie MItaly!!

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Anni = DateDiff("yyyy", DataNascita, Now)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    35
    Oregon....sei un grande!!!
    A volte mi chiedo: ma come faccio a non arrivarci da solo!!!!! Sono un po duro ma insisto!
    Grazie di tutto, Massimo!

  8. #8
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Occhio però, perchè... uno potrebbe NON averli ancora compiuti.

    Se è nato il 1/12/2003 restituisce 6 anni, invece ne ha ancora 5.


  9. #9
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    35
    Si gibra hai ragione: Vedrò come posso rimediare, anche se il calcolo che mi occorre non deve essere precississimo. Grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.