Gérer base de donnée

Résolu
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010 - 15 juin 2007 à 15:06
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010 - 15 juin 2007 à 18:14
Bonjour,
Je dispose d'un fichier au format txt avec en contenu des marques de voitures ! contenu du fichier :

Renault
Fiat
Ford
Chevrolet
Bentley
Chrysler
...

j'aimerais lire le contenu du fichier dans une listbox et quand j'appui sur un bouton créer une boucle jusqu'à la fin du fichier txt.

En gros il faut lire le fichier txt calculer le nombre de lignes créer boucle jusqu'à la fin du fichier a chaque valeur afficher msgbox retirer valeur diminuer le nombre de lignes de 1 et continuer la boucle et quand il n'y à plus du tout de valeur alors couper le programme

En espérant avoir été assez claire...
merci d'avance
123

9 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 17
15 juin 2007 à 16:13
Fait le à l'envers

Dim i As Long
For i = LaListBox.ListCount - 1 To 0 Step -1
    MsgBox LaListBox.List(i)
    MsgBox LaListBox.RemoveItem i
Next i

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
3
cs_Exploreur Messages postés 4822 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 14
15 juin 2007 à 15:14
Salut,


Reagrde sur codyx.Org, cela ne m'étonnerai pas qu'il n'y ait pas un snippet pour lire un fichier texte...


A+
Exploreur

 Linux a un noyau, Windows un pépin


 
0
cs_Exploreur Messages postés 4822 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 14
15 juin 2007 à 15:25
Re,

Regarde ce snippet, aprés à toi de faire un peu de modife....

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 17
15 juin 2007 à 15:31
Salut,

voici une méthode toute prête

Option Explicit

Private Function ReadAllLines(ByVal sPath As String, ByRef aLines() As String)
Dim ff As Integer
Dim sBuffer As String
    ff = FreeFile
    
    Open sPath For Input As #ff
        sBuffer = Input(LOF(ff), #ff)
    Close #ff
    aLines = Split(sBuffer, vbCrLf)
End Function

' exemple
d'utilisation
Private Sub exemple()
    Dim aMesLignes() As String
    Dim i As Long
   
ReadAllLines "C:\Documents and
Settings\mortalino\Bureau\Nouveau.txt", aMesLignes
Debug.Print (1 + UBound(aMesLignes)) & " lignes trouvées" & vbCrLf

For i = LBound(aMesLignes) To UBound(aMesLignes)
    Debug.Print aMesLignes(i)
Next i

End Sub

~
<small>[code.aspx?ID=39466 Mortalino] ~
Colorisation automatique</small>

Résultat :

6 lignes trouvées

Renault
Fiat
Ford
Chevrolet
Bentley
Chrysler

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
0

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

Posez votre question
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 17
15 juin 2007 à 15:35
Bon, là au dessus c'est pour lire (d'ailleurs, remplace Private Function, par Private Sub).

Voici une méthode d'écriture :

Option Explicit

Private Sub WriteLines(ByVal sPath As String, ByVal sNewValue As String)
Dim ff As Integer
Dim sBuffer As String
    ff = FreeFile
    
    Open sPath For Append As #ff
        Print #ff, sNewValue
    Close #ff
End Sub

' exemple
d'utilisation
Private Sub exemple()
   
WriteLines "C:\Documents and
Settings\mortalino\Bureau\Nouveau.txt", "Peugeot"

End Sub

~
<small>[code.aspx?ID=39466 Mortalino] ~
Colorisation automatique</small>

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
0
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
15 juin 2007 à 15:53
Merci bcp pour votre aide mais tout sa je sais faire :) je cherche un moyen pour lire ligne par ligne le contenu d'une listbox et afficher ce contenu à la volée dans un message box et quand il n'y à plus de contenu dans cette listbox alors couper le programme

en tout cas merci sa fait plaisir quand même :)

123
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 17
15 juin 2007 à 16:00
Couper le programme, c'est Unload Me (si t'as qu'une Form)

Lire ListBox :

Dim i As Long
For i = 0 To LaListBox.ListCount - 1
    MsgBox LaListBox.List(i)
Next i

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
0
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
15 juin 2007 à 16:05
oui mais le problème c'est que je dois retirer le nom de la marque de voiture à chaque fois imagine chevrolet est affiché dans la msgbox alors il faut retirer chevrolet et sa vraiment sa fait tout buguer :(

123
0
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
15 juin 2007 à 18:14
Merci bcp c'est exactement sa ;)

123
0