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 :

Probleme dans mes tableaux


Sujet :

VB 6 et antérieur

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Points : 244
    Points
    244
    Par défaut Probleme dans mes tableaux
    Voila j ai plusieurs phrases et je dois melangé les mots de chaque phrases et les affiché par exemple dnas une list box

    ex: j ai 2 phrases coucou les amis
    bonne année a tous

    Je voudrais les affichés comme ca:

    les coucou amis
    tous année a bonne

    au mieux de ca j ai ce resultat

    les coucou amis
    amis tous coucou annnée bonne les a

    Il garde en memoire la 1 er phrases et la melange avec la deuxieme

    voici mon code

    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    Private Sub Bou_melanger_Click()
     
        Dim i As Integer
        Dim j As Integer
        Dim z As Integer
        Dim k As Integer
        Dim tab_mot() As String
        Dim int_nbr_mot As String
        Dim tab_nombre() As Integer
        Dim tab_phrase_melang As String
        Dim tab_select_phras() As String 'tableau contenant les phrases de la liste phrase selectionné
        Dim str_mot As String
        Dim int_long As Integer
        Dim str_phrase_mel As String
     
        List_mel.Clear
     
        If List_select.ListCount = 0 Then 'si ya pas de phrase dans la list_select
     
            MsgBox "Vous devez d'abord sélectionné des phrases" + vbCrLf + "Double clik sur un phrase pour la sélectionné", vbExclamation, vbSystemModal
            Exit Sub
     
        End If
     
        For i = 1 To List_select.ListCount
     
            ReDim Preserve tab_select_phras(i) 'phrase selectionné
            tab_select_phras(i) = List_select.List(i - 1) 'contient les phrases selectionné
     
        Next i
     
        Randomize Timer
     
        For i = 1 To UBound(tab_select_phras)
     
            tab_select_phras(i) = tab_select_phras(i) + " "
     
            int_long = Len(tab_select_phras(i))
     
                For z = 1 To int_long
     
                    str_mot = str_mot + Mid(tab_select_phras(i), z, 1)
     
                        If Mid(tab_select_phras(i), z, 1) = " " Then
     
                            k = k + 1
     
                            ReDim Preserve tab_mot(1 To k)
                            tab_mot(k) = Trim(str_mot)
                            str_mot = ""
     
                        End If
     
                        int_nbr_mot = k
     
                Next z
     
                ReDim tab_nombre(k)
     
                tab_nombre(1) = Int(Rnd * k) + 1 'générer un nombre aléatoire compris entre des bornes choisies
     
                For j = 2 To int_nbr_mot
     
                    tab_nombre(j) = Int(Rnd * k) + 1
     
                        For z = j - 1 To 1 Step -1
     
                            If tab_nombre(j) = tab_nombre(z) Then
     
                                j = j - 1
     
                                z = 0
     
                                Exit For
     
                            End If
     
                        Next z
     
                Next j
     
     
     
                For z = 1 To int_nbr_mot
     
                    tab_phrase_melang = tab_phrase_melang & " " & tab_mot(tab_nombre(z))
     
                Next z
     
            List_mel.AddItem tab_phrase_melang
     
            tab_phrase_melang = ""
     
     
     
        Next i
     
     
     
     
     
     
     
    End Sub
    merci d avance

  2. #2
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    Je n'ai pas regardé ton code mais n'y a t'il pas une certaine similitude avec ce message : http://www.developpez.net/forums/sho...d.php?t=465751 ?
    Pourquoi avoir créé un nouveau sujet ?

  3. #3
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    Bonjour,

    Remarques :

    1) tu parles de sélection d'une phrase dans la liste et je vois un traitement de la totalité des phrases ('et encore : le 1er élément de ton tableau serait toujours vide avec tab_select_phras(i) = List_select.List(i - 1) puisque i = 1 au début !!!)
    2) un split sur " " de la phrase sélectionnée te conduirait à un array (et je t'ai montré dans ton autre post comment mélanger un array

    Bref...

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Points : 244
    Points
    244
    Par défaut
    tab_select_phras(i) = List_select.List(i - 1) puisque i = 1 au début !!!)

    si je met pas I-1 la 1 er phrase ne sera jamais selectionné

    ps: je voudrais bien qu on m aide sur mon code et pas me donné un autre code que j ai pas encore vu ces instruction la merci

  5. #5
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    Tu plaisantes ?
    Réveille-toi et regarde quel i j'ai mis en rouge !!!!

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Points : 244
    Points
    244
    Par défaut
    c le programme je le fais tourné c pcq dans la list il commence a 0

    si je fais tab_select_phras(i) = List_select.List(i ) la 1 er phrase n apparait jamais

  7. #7
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    Explique-toi à nouveau en français (pas de sms ici ) et en détaillant ce que tu as exactement dans ta liste de phrases et ce que tu veux faire exactement...

    Et ce n'est pas ce i que j'ai mis en rouge, mais ... l'autre... non ????

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Points : 244
    Points
    244
    Par défaut
    ok bon en faite j ai une serie de phrases exemple:

    salut a les amis
    hello the world

    je voudrais faire ressortir ces deux phrases mais melangé genre:

    a amis les salut
    world the hello

    mais j obtiens a la place

    a amis les salut ==>pour la 1 er phrases ca marche
    world a the amis hello salut ==> la il melange la 1 er avec la Deuxieme

    juste ca mais ca fais 2 semaines que j ai le meme probleme et pas moyen de trouvé

    tab_select_phras(i) = List_select.List(i - 1)

    j ai voulu faire un tableau contenant toutes les phrases d une list et ensuite je fais une autre boucle et avec la 1 er je la decompose ensuite la 2 .....

    si je fais tab_select_phras(i) = List_select.List(i )il me m affiche qu a partir de la deuxieme phrase

  9. #9
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 537
    Points
    5 537
    Par défaut
    Alors regarde bien (et essaye de comprendre un peu, hein ...)

    Je ne fais ivi appel à rien d'autre qu'à Split (dont je t'ai parlé plus haut pour dresser un array aevc " " comme séparateur et au code que je t'ai donné dans ton autre post pour mélanger une array (ici mis en vert) ...

    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
    Private Sub Form_Activate()
     Randomize Timer
     'juste pour exemple d'une liste à traiter
     List1.AddItem "salut les amis"
     List1.AddItem "hello the world"
    End Sub
    
    Private Sub Command1_Click()
      For i = 0 To List1.ListCount - 1
        List1.List(i) = melange(List1.List(i))
      Next
    End Sub
    
    Private Function melange(chaine As String) As String
      Dim monarray, i As Integer, ou As Integer, temp As String, nb As Integer
      monarray = Split(chaine, " ")
      nb = UBound(monarray)
      For i = 0 To nb \ 2
       ou = Int(((nb - i) * Rnd))
       temp = monarray(ou)
       monarray(ou) = monarray(nb - i)
       monarray(nb - i) = temp
      Next 
     melange = ""
      For i = 0 To UBound(monarray)
        melange = melange & monarray(i) & " "
      Next
      melange = Trim(melange)
    End Function
    Allez .... bonne chance ....
    Mais n'oublie pas de mettre RESOLU tant ici que sur ton autre post... au moins !

  10. #10
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Points : 244
    Points
    244
    Par défaut
    Merci de ta patience

  11. #11
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Points : 244
    Points
    244
    Par défaut
    Juste une derniere question pq nbr /2

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

Discussions similaires

  1. Probleme dans mes conditions pour VLOOKUP
    Par bentor22 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/02/2013, 17h04
  2. probleme dans les tableaux
    Par chamsou_23i dans le forum Débuter
    Réponses: 5
    Dernier message: 05/07/2011, 19h11
  3. probleme dans mes favoris reseau
    Par bambi98 dans le forum Windows XP
    Réponses: 2
    Dernier message: 08/08/2008, 14h17
  4. Probleme dans mes Case
    Par Be Cool dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 26/05/2008, 09h03
  5. retour a la ligne non voulu dans mes tableaux ????
    Par cedre22 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 01/03/2006, 15h48

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