Petite gymnastique vb :)

Résolu
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010 - 18 juin 2007 à 20:21
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 - 18 juin 2007 à 20:51
Bonjour,
je suis en train de créer un petit programme mais je "bug" sur une partie voilà mon problème : j'aimerais que quand je clic sur command1 l'application cherche dans le contenu d'un fichier txt un chaine de caractère si il trouve pas cette chaine alors il ne fait rien mais si il la trouve alors il garde en mémoire la ligne dans laquelle se trouve cette chaine de caractère et affiche dans une textbox le contenu de cette ligne et pour finir il faudrait lire le contenu de cette ligne après le séparateur ";"

un ligne ressemble à sa "Configuration1 =ok Visible=non ;
oui"

pour faire simple:
1formulaire
1boutton
1textbox

si clic sur boutton alors chercher dans fichier texte une chaine de caractère si chaine trouvée alors enregistrer dans la mémoire ou se trouve cette chaine (quelle ligne) lire la dîtes ligne et enfin lire le contenu de cette ligne après le séparateur ";"

vraiment j'arrive pas à finir mon application et sa me gène alors je demande de l'aide à la sainte communauté Vbfrance ;)

vraiment un gros merci d'avance
123

7 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
18 juin 2007 à 20:27
Salut,

voilà :

Option Explicit
Private Sub ReadAllLines(ByVal sPath As String, ByRef aLines() As String)
Dim FF As Integer
Dim sBuffer As String
    FF = FreeFile
    On Error Resume Next
    Open sPath For Input As #FF
        sBuffer = Input(LOF(FF), #FF)
    Close #FF
    aLines = Split(sBuffer, vbNewLine)
End Sub

' exemple
d'utilisation
Private Sub Exemple()
Dim aMesLignes() As String, Dim MonMot() As String
Dim i As Long

    
    ReadAllLines "C:\chemin\tonfichier.txt", aMesLignes

    Me.Print (1 + UBound(aMesLignes)) & " lignes trouvées" & vbCrLf
    For i = LBound(aMesLignes) To UBound(aMesLignes)
        If Instr(1, aMesLignes(i), Text1.Text)
Then
            MonMot = Split(aMesLignes(i), ";")
            MsgBox MonMot(1)
            Exit For
        End If
    Next i
erase aMesLignes, erase MonMot
End Sub

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

@++

<hr size="2" width="100%" />( Nouveau forum : Exclusivement Office & VBA
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
18 juin 2007 à 20:30
Voilà, ton exercice à rendre demain matin dernière limite est fait

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
18 juin 2007 à 20:36
je regarde sa si sa marche tu gère mon cher mortalino :)

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
18 juin 2007 à 20:40
Bah, je gère.. disons que c'est pas compliqué. Regarde : un coup de Open ..for Input, 2 coups de Split, et un coup d'Instr  et voilà !

@++

<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
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
18 juin 2007 à 20:40
j'ai limpression que sa fonctionne bien :) MERCI

123
0
maxsecurite2 Messages postés 181 Date d'inscription vendredi 3 janvier 2003 Statut Membre Dernière intervention 9 avril 2010
18 juin 2007 à 20:48
et par hasard tu sais pas comment faire pour vérifier si la chaine de caractère fais plus de 5-6 lettre ?

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
18 juin 2007 à 20:51
Si, vois la fonciton Len, elle te renvoie le nombre de caractère de ta chaine

@++

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