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 6 et antérieur Discussion :

Extraction à partir d'un tableau


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 20
    Par défaut Extraction à partir d'un tableau
    Bonjour à tous,

    Dans un tableau A (trié en décroissant), j'ai 12,11,11,10,9,8,2
    ou bien 10,7,6,5,4,3,0

    Je souhaite garder garder dans un tableau B : 12,11,10,9,8
    ou bien 7,6,5,4,3

    Autrement dit, la suite de nombres en décroissant.

    Comment le faire rapidement ?

    Merci d'avance pour vos réponses

  2. #2
    Membre émérite Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Par défaut
    En gros, tu veux retirer les doublons ? ben y a plus ka , faut kon !
    Ce n'est pas un problème de VB6 .... mais d'écriture de l'organigramme.

  3. #3
    Membre expérimenté
    Inscrit en
    Janvier 2011
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 112
    Par défaut
    _ Ia ora na.
    _ Une fois les doublons éliminés, voici une solution possible :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim I, K
    K = 0
    If (TabA(0) = (TabA(1) + 1)) Then TabB(0) = TabA(0): K = 1
    For I = 1 To UBound(TabA) - 1
      If (TabA(I) = (TabA(I + 1) + 1)) Or (TabA(I - 1) = (TabA(I) + 1)) Then TabB(K) = TabA(I): K = K + 1
    Next
    If (TabA(I - 1) = (TabA(I) + 1)) Then TabB(K) = TabA(I)
    _ Il y a sans doute plus simple, mais le fait que l'un des éléments à retenir puisse être le premier ou le dernier complique les choses.
    _ Dernier point : dans vos exemples, il n'y a jamais qu'une série de valeurs consécutives ; si votre tableau A en comporte plusieurs, la boucle ci-dessus les placera toutes dans le tableau B (par exemple : 8, 7, 6, 3, 2, 1) ; il faudrait prévoir une autre boucle pour isoler les sous-tableaux de B.
    _ Bon courage pour la suite.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 20
    Par défaut
    Merci beaucoup XylonAkau
    Ca fonctionne

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 29/09/2014, 23h08
  2. Réponses: 52
    Dernier message: 23/05/2006, 11h08
  3. alimanter une listbox a partir d'un tableau
    Par wikimeta dans le forum Composants VCL
    Réponses: 9
    Dernier message: 31/10/2005, 14h24
  4. [MySQL] Comment ecrire dans une BDD à partir d'un tableau ?
    Par weed dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 16/09/2005, 15h53
  5. courbe à partir d'un tableau
    Par chafcha dans le forum MFC
    Réponses: 3
    Dernier message: 26/02/2004, 08h53

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