IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

comparer deux dates, dont une issu d'un datagridview


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut comparer deux dates, dont une issu d'un datagridview
    Bonsoir,

    je souhaiterais comparer la date et l'heure actuel avec la date et l'heure de chaque enregistrement qui apparaissent dans mon datagridview :

    ainsi actuellement j'ai ceci dans mon datagridview :
    Pierre DUPONT | 01/03/2014 14:22:00

    et donc je souhaiterais rafraichir mon datagridview toutes les minutes pour afficher ceci :
    Pierre DUPONT | 01/03/2014 14:22:00 | 4 jours 12 heures 23 minutes

    pour ce faire j'ai mis dans un 'sub' la requête de mon tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     Public Shared Sub rafaraichi_moi()
            Dim da As MySqlDataAdapter
            Dim dst As New DataSet
            Dim Hostconn As New MySqlConnection
            Hostconn.ConnectionString = "server=localhost;user id=root; password=;database=trans18"
     
            Try
                Hostconn.Open()
                da = New MySqlDataAdapter("SELECT * FROM telephone ORDER BY statut", Hostconn)
                da.Fill(dst, "telephone")
                Form1.DataGridView1.DataSource = dst.Tables("telephone")
                Form1.DataGridView1.Columns("id_tel").Visible = False
                Form1.DataGridView1.Columns("identite").Width = 320
                Form1.DataGridView1.Columns("telephone").Visible = False
                Form1.DataGridView1.Columns("statut").Visible = False
                Form1.DataGridView1.Columns("modifie").Width = 250
                'ici je souhaiterais rajouter la colonne qui me comparerais la date actuel à l'enregistrement !!!
     
                Form1.DataGridView1.AllowUserToAddRows = False
                Form1.DataGridView1.RowHeadersVisible = False
                Form1.DataGridView1.ColumnHeadersVisible = False 'enleve l'entéte de chaque colonne du tableau
                Form1.DataGridView1.AllowUserToResizeColumns = False 'empeche de redimenssionner la largeur des colonnes
                Form1.DataGridView1.AllowUserToResizeRows = False 'on autorise pas à modifier la hauteur de ligne
                Form1.DataGridView1.ReadOnly = True
                Form1.DataGridView1.ClearSelection()
     
            Catch ex As MySqlException
                MessageBox.Show("erreur de connexion a la base : " & ex.Message)
            End Try
            Hostconn.Close()
     
        End Sub
    Mais je n'ai aucune idée de la façon dont je pourrais réalisé ceci, et mon amis google ne ma pas vraiment aidé sur ce coup, alors si quelqu'un a déjà rencontré le même problème !!!
    d'avance merci

  2. #2
    Membre Expert Avatar de callo
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2004
    Messages
    887
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 887
    Par défaut
    Citation Envoyé par gastoncs Voir le message
    je souhaiterais comparer la date et l'heure actuel avec la date et l'heure de chaque enregistrement qui apparaissent dans mon datagridview :

    ainsi actuellement j'ai ceci dans mon datagridview :
    Pierre DUPONT | 01/03/2014 14:22:00

    et donc je souhaiterais rafraichir mon datagridview toutes les minutes pour afficher ceci :
    Pierre DUPONT | 01/03/2014 14:22:00 | 4 jours 12 heures 23 minutes


    Mais je n'ai aucune idée de la façon dont je pourrais réalisé ceci, et mon amis google ne ma pas vraiment aidé sur ce coup, alors si quelqu'un a déjà rencontré le même problème !!!
    d'avance merci
    Bonjour,
    Il faut passer par DateDiff. Tu pourrais donc avoir quelque chose du genre:
    Code vb.net : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim nbreJours As Int32, nbreMinutes As Int32, nbreHeures As Int32 
    Dim dateD As DateTime
     
    dateD = DateTimePicker1.Value
    nbreJours = DateDiff(DateInterval.Day, dateD, Now) 'différence en jours
    nbreHeures = DateDiff(DateInterval.Hour, dateD, Now) 'différence en heures
    nbreMinutes = DateDiff(DateInterval.Minute, dateD, Now) 'différence en minutes
     
    Dim result As String = "Résultat comparaison : " & String.Format("Jours = {0}, heure = {1}, Minutes = {2}", nbreJours, nbreHeures, nbreMinutes)
    MessageBox.Show(result)

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut
    ok d'accord merci callo, mais il faut d'abord que je rajoute une colonne a mon datagridview existant pour y mettre le datediff et y récupéré la date mysql

  4. #4
    Membre Expert Avatar de callo
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2004
    Messages
    887
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Togo

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Février 2004
    Messages : 887
    Par défaut
    Citation Envoyé par gastoncs Voir le message
    ok d'accord merci callo, mais il faut d'abord que je rajoute une colonne a mon datagridview existant pour y mettre le datediff et y récupéré la date mysql
    As-tu un problème pour faire ça?

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut
    oui callo, merci pour le temps que tu me consacre, en fait j'arrive bien a créer un colonne avec ce code que j'ai trouvé sur msdn :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
            ' Initialize the button column.
            Dim buttonColumn As New DataGridViewButtonColumn
     
            With buttonColumn
     
                .Text = "hello"
                .UseColumnTextForButtonValue = True
            End With
     
            ' Add the button column to the control.
            Form1.DataGridView1.Columns.Insert(0, buttonColumn)
    mais comment placer a la place de "hello" ici mes dates issu de la base de donnée et faire ma comparaison de date !

  6. #6
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Février 2007
    Messages : 758
    Par défaut
    j'ai continué à chercher, ainsi j'ai crée ceci pour créer une colonne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                Form1.DataGridView1.Columns.Add("temps", "HeaderText")
                Form1.DataGridView1.Columns("temps") 'c'est ici que je devrais récupérer les dates et heures de chaque enregistrement pour faire le datediff mais je ne sais comment faire
    mais comment récupérer le resultat dans cette colonne ??? pour fait mon datediff ?

Discussions similaires

  1. Réponses: 6
    Dernier message: 18/06/2014, 16h13
  2. comparer deux date dans une requete select simple
    Par isac83 dans le forum Requêtes
    Réponses: 1
    Dernier message: 23/09/2007, 09h53
  3. comparer deux dates
    Par adel25 dans le forum C++
    Réponses: 3
    Dernier message: 23/08/2005, 20h29
  4. Comparer deux dates
    Par LoicH dans le forum C++Builder
    Réponses: 4
    Dernier message: 04/03/2005, 22h53
  5. comment comparer deux dates?
    Par billoum dans le forum C++Builder
    Réponses: 2
    Dernier message: 21/08/2004, 21h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo