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 :

mettre le contenu d'une zone de texte dans un tableau


Sujet :

VB 6 et antérieur

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 28
    Points : 31
    Points
    31
    Par défaut mettre le contenu d'une zone de texte dans un tableau
    Bonjour
    Je tente de mettre le contenu d’une zone de texte dans un tableau de caractères pour ensuite afficher chaque élément du tableau (lettre) .
    Je procède comme suit :
    Mais j’ai pas le resultat escompté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim i as integer
    Dim tablo() as string
    Tablo=split(text1.text)
    For i=0 to ubound(tablo)
    	Msgbox tablo(i)
    Next i
    Au lieu de m’afficher une lettre , c’est plutot tout le contenu (mot) de la zone de texte qui s’affiche
    Merci pour un coup de main

  2. #2
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 182
    Points
    17 182
    Par défaut
    Split permet de créer un tableau en découpant une phrase suivant le séparateur indiqué, s’il n’y est pas spécifié, le séparateur espace est pris par défaut.

    Pour ton cas Split ne peut pas être utilisé, il te faut utiliser la fonction Mid.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 28
    Points : 31
    Points
    31
    Par défaut
    voila comment je tente d'utiliser la fonction mid
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim i as integer
    Dim tablo() as string
    Tablo=mid(text1.text)
    For i=0 to ubound(tablo)
    	Msgbox tablo(i)
    Next i
    A l'execution j'ai un message d'errerur "erreur de compilation cet argument n'est pas facultatif"
    En fait je veux par exemple, si je saisis essai dans la zone de texte, mettre le mot essai dans un tableau et afficher ensuite chaque lettre à tour de role

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    261
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 261
    Points : 216
    Points
    216
    Par défaut
    Citation Envoyé par lepieux Voir le message
    voila comment je tente d'utiliser la fonction mid
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim i as integer
    Dim tablo() as string
    Tablo=mid(text1.text)
    For i=0 to ubound(tablo)
    	Msgbox tablo(i)
    Next i
    A l'execution j'ai un message d'errerur "erreur de compilation cet argument n'est pas facultatif"
    En fait je veux par exemple, si je saisis essai dans la zone de texte, mettre le mot essai dans un tableau et afficher ensuite chaque lettre à tour de role

    C'est normal que ça marche pas

    Essayes ça, si j'ai bien compris ce que tu veux, ça doit répondre à ce que tu cherches :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Dim i As Integer
    Dim Taille As Integer
     
    Taille = Len(Text1.Text)
    Dim tablo() As String
    For i = 1 To Taille
    ReDim Preserve tablo(i) As String
    tablo(i - 1) = Mid(Text1.Text, i, 1)
    Next i
     
    For i = 0 To UBound(tablo) - 1
        MsgBox tablo(i)
    Next i

  5. #5
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 182
    Points
    17 182
    Par défaut
    justgreat
    Plutôt que Redim Preserve, il est possible de dimensionner en une seul fois le tableau
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    '.......
    Taille = Len(Text1.Text)
    Dim tablo() As String
    ReDim tablo(Taille)
    For i = 1 To Taille
    'ReDim Preserve tablo(i) As String
    tablo(i - 1) = Mid(Text1.Text, i, 1)
    '........

    Pour lepieux, intéresses toi au fonction Left, Mid et Right dans ton explorateur d'objets (F2 dans l'éditeur VB6) Classes Strings en sélectionnant l'un de ces mots, tu as une petite explication dans la partie basse, si tu veux plus de détails, appuis sur F1, pour cela il te faut MSDN, que tu peux charger ICI (en français).
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  6. #6
    Nouveau membre du Club
    Inscrit en
    Février 2010
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 28
    Points : 31
    Points
    31
    Par défaut
    Merci à Tous ca marcha

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

Discussions similaires

  1. Réponses: 16
    Dernier message: 19/08/2010, 15h25
  2. Réponses: 7
    Dernier message: 11/02/2010, 22h00
  3. Recuperer le contenu d'une zone de texte dans une variable
    Par lilp1 dans le forum Macros et VBA Excel
    Réponses: 49
    Dernier message: 14/05/2009, 11h44
  4. Réponses: 4
    Dernier message: 28/04/2008, 12h11
  5. afficher le contenu d'une zone de texte dans une page WEB
    Par tomman dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 11/06/2007, 14h55

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