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

ASP.NET Discussion :

Trouver la dernière ligne d'une DataTable


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut Trouver la dernière ligne d'une DataTable
    Bonjour tout le monde.

    Je me pose une question peut-être un peu bizarre, mais je ne trouve pas de réponse (ou alors, je passe à côté du truc !)

    J'ai fabriqué une datable avec des données de ma base de donnée et je la lis avec un For Each.

    Lorsque j'arrive au dernier enregistrement, je voudrais faire un traitement particulier et donc mettre un test conditionnel (If). L'ennui c'est que je ne trouve pas quoi tester.

    Alors bien sur, je sais faire un compteur et prende en amont la longueur de la DataTable, mais je me demandais s'il n'y avait pas un statut dans la DataRow qui permettait de savoir que c'est la dernière facilement.

    Pour plus de clarté voici un peu de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
            Dim dtMenuDetail As DataTable = Unerequete de la base de donnée
            For Each dr As DataRow In dtMenuDetail.Rows
    'un traitment sur les données
                 If "c'est la dernière" Then
                        'un traitemtn particulier
                 End If
            Next
    Pouvez vous m'aider ?

  2. #2
    Membre Expert
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Par défaut
    Pour moi, for each doit etre utilisé pour des traitements identiques sur tous les objets. Si tu fais un traitement différent sur l'un d'eux, c'est que tu ne devrais pas utiliser de for each. Remarque, on voit souvent des commandes utilisées de maniere detournée alors qu'il existe une fonction adaptée (par exemple utiliser un for/break plutot qu'un while).

    Mais bon, peut etre qu'il y a des arguments dans l'autre sens (mais comme ca, je vois pas)

  3. #3
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    Ok, je vois ce que tu veux dire.
    Alors pour être plus précis (mon traitement est assez simple en fait) dans mon For Each, je prends deux champs texte dans la base de donnée, je les colle dans un label et j'ajoute le label.
    A la suite de chaque Label je place un <hr> (pour faire une "séparation"). Mon idée est juste de détecter le dernier enregistrement et ne pas ajouter le <hr>.

    Du coup, là, je vois pas bien comment utiliser autre chose que le For Each.

  4. #4
    Membre Expert
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Par défaut
    Bah comme tu l'as mis dans ton premier message, un simple for avec un index

  5. #5
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    Soit le foreach avec le compteur comme tu as proposé.
    Soit apres ton foreach, tu traites á part le cas de la derniere ligne.

  6. #6
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    ok, merci les gars.

    Donc, on peut légitimement déduire que dans la lecture des ligneq de la DataTable on ne peut pas déterminer un statut de position sur les lignes.

    Elles ont pas un index, au moins ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. trouver la dernière valeur d'une ligne
    Par Stardust31 dans le forum Excel
    Réponses: 5
    Dernier message: 18/04/2018, 10h41
  2. [XL-2010] Existe-t-il une methode universelle pour trouver la dernière ligne
    Par Denis_67 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/06/2015, 14h07
  3. [Débutant] trouver une ligne dans une datatable
    Par Ashireon dans le forum VB.NET
    Réponses: 30
    Dernier message: 22/08/2012, 09h00
  4. [XL-2003] Trouver la dernière ligne d'une feuille
    Par Taiby dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 14/02/2012, 13h39
  5. [XL-2007] Trouver la dernière ligne après filtre et coller une selection
    Par Systémicien dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 25/03/2011, 08h19

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