PB d'aojout de ligne dans un listbox

Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005 - 12 févr. 2004 à 14:45
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005 - 13 févr. 2004 à 14:10
Hello
Voici mon code

Open d For Input As #1
    Do While Not EOF(1) ' Vérifie si la fin du fichier est atteinte.
    c = 0
        Line Input #1, recu$ ' Lit les lignes de données.
         'Boucle de récupération des bases sur la ligne list
        
           For b = 1 To Len(recu$)
            'recherche du séparateur "'"
            pos% = InStr(b, recu$, ":")
            'si le séparateur a été trouvé
                If pos% <> 0 Then
                    lst_result.AddItem
                    lst_result.List(l, c) = Mid(recu$, b, pos% - b) 'Récupérer les caratères entre le pointeur b et la position pos%
                    'f = Mid(recu$, b, pos% - b) 'point de test
                    
                    b = pos%
                    c = c + 1
                Else
            'si le pointeur est à zéro c'est qu'il a fait la lecture complète de la ligne
                    lst_result.AddItem
                    lst_result.List(l, c) = Mid(recu$, b, Len(recu$) - b + 1) ' Récuperation des caractère en fin de ligne
                    'f = Mid(recu$, b, Len(recu$) - b) 'point de test
                    
                    b = Len(recu$)
                    
               End If
               
           Next
         
    Loop
    l = l + 1
Close
----------------------------------------------------------------------

Pourquoi une foix qu'il a fini pour une ligne j'ai deux autres lignes vierges qui sont insérées en fin de list box... Je sèche je comprend pas.
Le mode débuug ne me donne rien de bien intéréssant. il passe bien qu'une seul foix par info sélectionnées dans la ligne...

Je voix rien, appart que ca fait peut être trop longtemps que je suis dessus

Merci

Vincent
:)

14 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
12 févr. 2004 à 15:08
Je vois pas bien ton pb mais ton code me semble bien compliqué !! Est-ce que tu pourrais nous dire ce que tu as dans les lignes de ton fichier, et ce que tu veux mettre dans ta listbox, on pourra peut-être te pondre un code plus simple !!

Christophe R.
0
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005
12 févr. 2004 à 15:36
Mon fichier est composer de lignes, sur ces lignes des infos sont séparées de":". Ce que j'aimerrais c'est que les infos se trouvant entre ":" soit stockées dans une colonne du liste box et ce par ligne.

soit exemple
fichier
ESSAI:Z:TEST
ESSAI2:A:TEST2

Liste box
col1 col2 col3
ESSAI Z TEST
ESSAI2 A TEST2

merci
vincent
PS si tu trouve moins compliquer pour la lecture d'un fichier moi je suis prenneur.................
:)
0
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005
12 févr. 2004 à 15:38
Mon fichier est composer de lignes, sur ces lignes des infos sont séparées de":". Ce que j'aimerrais c'est que les infos se trouvant entre ":" soit stockées dans une colonne du liste box et ce par ligne.

soit exemple
fichier
ESSAI:Z:TEST
ESSAI2:A:TEST2

Liste box
col1 col2 col3
ESSAI Z TEST
ESSAI2 A TEST2

merci
vincent
PS si tu trouve moins compliquer pour la lecture d'un fichier moi je suis prenneur.................
:)
0
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005
12 févr. 2004 à 15:40
Mon fichier est composer de lignes, sur ces lignes des infos sont séparées de":". Ce que j'aimerrais c'est que les infos se trouvant entre ":" soit stockées dans une colonne du liste box et ce par ligne.

soit exemple
fichier
ESSAI:Z:TEST
ESSAI2:A:TEST2

Liste box
col1 col2 col3
ESSAI Z TEST
ESSAI2 A TEST2

merci
vincent
PS si tu trouve moins compliquer pour la lecture d'un fichier moi je suis prenneur.................
:)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005
12 févr. 2004 à 15:40
Mon fichier est composer de lignes, sur ces lignes des infos sont séparées de":". Ce que j'aimerrais c'est que les infos se trouvant entre ":" soit stockées dans une colonne du liste box et ce par ligne.

soit exemple
fichier
ESSAI:Z:TEST
ESSAI2:A:TEST2

Liste box
col1 col2 col3
ESSAI Z TEST
ESSAI2 A TEST2

merci
vincent
PS si tu trouve moins compliquer pour la lecture d'un fichier moi je suis prenneur.................
:)
0
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005
12 févr. 2004 à 15:44
BOn alors désolé pour les message successif mais j'ai pas arreter d'avoir des erreur ASP NET serveur

:)
0
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005
12 févr. 2004 à 15:49
BOn alors désolé pour les message successif mais j'ai pas arreter d'avoir des erreur ASP NET serveur

:)
0
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005
12 févr. 2004 à 15:53
BOn alors désolé pour les message successif mais j'ai pas arreter d'avoir des erreur ASP NET serveur

:)
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
12 févr. 2004 à 17:05
Bah !! Comme le lsitbox ne peux organiser les données en colonne, pour faire ce que tu veux, tu ne peux que remplacer tes ':' par des espace par exemple alors ca fera cela :

Open Fic for input as #1
While Not EOF51)
 Line Input #1, Ligne
 Ligne = Trim$(Ligne)
 If Ligne <> "" Then List1.Additem Replace$(Ligne,":"," ")
Wend
Close #1


C'est tout de même bcp plus court !

Christophe R.
0
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005
12 févr. 2004 à 18:49
Merci pour le cout de main même le résultat attendu n'est pas bon.
cela ne fait qu'une colonne et non pas troix.

vincent
:)
0
cs_wape Messages postés 262 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 19 décembre 2010 12
12 févr. 2004 à 22:03
Essaye ceci :

Dim i As Integer
Dim tTxt() As String

Open d For Input As #1
Do While Not EOF(1)
Line Input #1, recu$
tTxt() = Split(recu$, ":")
For i = 0 To UBound(tTxt)
If i = 0 Then
lst_result.AddItem tTxt(i)
Else
lst_result.List(lst_result.ListCount - 1, i) = tTxt(i)
End If
Next i
Loop
Close

@+

wape
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
13 févr. 2004 à 09:22
Vous etes en VB6 ou pas les gars !!!
parce que sur mon VB6, "st_result.List(lst_result.ListCount - 1, i)" ne passe pas !!! ".list(...)" n'accepte qu'un argument

Christophe R.
0
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005
13 févr. 2004 à 12:23
Moi oui je suis en VB6. J'ai pas encore testé le code, ah oui pour info la listbox que j'utilise fait partis des composants de forms 2 object library.

Merci de l'aide apporté.

Vincent

:)
0
Raugues Messages postés 49 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 5 février 2005
13 févr. 2004 à 14:10
Pour info j'ai trouver pourquoi il me rajoutait des lignes..
lorsque je fait mon addnew je suis dans une boucle for qui récupaire des infos d'une ligne, comme la boucle passe trois foix c'est normale que j'ai trois lignes.
Par contre la résolution est pas simple si cela intéraisse je peut fournir le code final. Je previens tout de suite c'est tres clinne comme prog mais la j'ai plus trop le temps de réflechir j'ai un impératif de date.

Merci a ceux qui mon répondu
Vincent
:)
0
Rejoignez-nous